Programming/Tips, Fix, Anything Else 7

[TFAE] 게시판 조회수를 올리는 다양한 방법(Insert)

이 글이 쓰여진 이유를 보고 오시면 더욱 도움이 될 것 같다. TM 락을 해결하기 위한 방법 중의 하나는 Insert로 처리를 하는 것이다. 3부작으로 급조 기획된 이 글이 너무 급박하기 마무리 지어지는 느낌이 없지 않아있지만, 삽질할 시간을 아끼는 것도 중요하니 결론을 얘기하자면 제목과 위에도 언급된 Insert로 처리를 하는 것이다. 소스코드로 빠르게 알아보자 먼저, 기존의 소스 코드 먼저 보자. MyBatis ORM Framework로 작성한 구문은 다음과 같다. 다음은 Insert 구문으로 바꾼 구문이다. 생각보다 심플하죠? 너무 기본적인 INSERT 구문이기 때문이다. 여기서 중요한 건 그 이후의 Service 단과 View단에서 조회 시 어떤 데이터 값을 뿌려주냐에 달렸다. 순차적으로 보자. ..

[TFAE] 게시판 조회수를 올리는 다양한 방법(Update)

이 게시물은 개발을 시작하는 사람들이라면 누구나 한 번 쯤은 만들어봤을 '게시판'에 대한 내용이다. 그 중에서도 게시판이라는 하나의 서비스를 만들기 위해, 점점 살을 붙이고 붙여서 완성해가면서 한 번 쯤은 고려해봤을 조회수에 대한 내용이다. 먼저, 조회수란? 사용자가 게시물을 한 번 클릭할 때, 해당 게시물의 조회수를 1씩 증가시키는 동작이다. 비즈니스 로직에 따라 다르겠지만 간단하게 알고리즘화를 하자면 다음과 같을 것 같다. 클릭 > 해당 게시물의 조회수 칼럼에 1증가 Update > 게시물 내용 프론트로 뿌리기(제목, 저자, 날짜, 조회수 등) - UPDATE 구문을 통한 조회수 업데이트 클릭한 게시물 번호에 해당하는 게시물의 INQUIRY_CNT(조회수)칼럼에 1을 추가해주는 로직이다. 쿼리는 다음..

[TFAE] 자바 main 메서드에서 static을 왜 쓰는걸까?

static으로 선언된 변수, 함수(메서드)는 자바 버츄얼 머신에서 인스턴스 객체의 생성없이 호출 할 수 있다. public class Test { public static void main(String[] args) { System.out.println("Hello, World"); } } static이 없으면 Test 객체를 생성해서 내부 함수인 main을 호출해야 한다. class는 공장, 공장에서 만들어진 것이 객체, 객체는 인스턴스(Instance) * 공장(Class)내에 사칙연산 메서드가 있다고 해보자. 덧셈, 뺄셈, 곱셈, 나눗셈 일반적인 메서드 사용법 : 공장에서 객체를 하나 생성함으로써 메서드를 사용할 수 있게끔 하는 것. 즉, 클래스에서 객체 생성 후 -> 메서드 사용 * static..

[TFAE] JAVA SE, EE, ME 차이가 뭐야?

자바면 자바지, SE는 뭐고 EE? 그리고 ME? 뭐지..라는 생각에 적어보는 오늘의 포스팅. 한 줄 요약 : 자바의 플랫폼 종류이고, 플랫폼 별(SE, EE, ME)로 사용하는 목적에 차이가 있다. 조금 더 자세히 알아보자. JAVA SE (Java Platform Standard Edition) 데스크톱, 서버, 임베디드시스템을 위한 표준 자바 플랫폼. 자바 가상머신 규격 및 API집합을 포함한다. JAVA EE,ME는 목적에 따라 SE를 기반으로 기존의 일부를 택하거나 API를 추가하여 구성된다. SE는 가장 일반적으로 사용된다. JDBC나 기본적인 기능이 모두 포함되어 있기 때문에 Android개발할때 주로 SE를 사용한다. JAVA EE (Java Platform EnterPrise Editio..

[TFAE] 스프링부트 프로젝트 GitHub Action CI&CD연대기 - 2

[TFAE] 스프링부트 프로젝트 GitHub Action CI&CD연대기 - 1 현재의 상황 아일랜드에 거주하는 한국인 유학생들을 대상으로 한 거래 플랫폼을 제작중이다. 일명 아-거 . 열심히 코드를 작성하고, 이것 저것 테스트를 마치고 이제 세상에 선보여야 할 때가 supreme-ys.tistory.com 2편을 시작하기에 앞서서, 1편을 꼭 봐주시고 오시면 좋을 것 같네요! 지난 1편에서의 문제를 요약하자면 다음과 같다. - 깃헙에 application.properties, application.yml 파일을 업로드하면 안된다. - 그러면 파일을 제외하면 되잖아! - 그럼 빌드가 안되잖아. - 엌ㅋㅋ 미안 우리는 고민했다. 약 100시간이 넘는 시간동안. 고민했고, 많은 방법을 시도해보았다. 먼저, ..

[TFAE] 스프링부트 프로젝트 GitHub Action CI&CD연대기 - 1

현재의 상황 아일랜드에 거주하는 한국인 유학생들을 대상으로 한 거래 플랫폼을 제작중이다. 일명 아-거 . 열심히 코드를 작성하고, 이것 저것 테스트를 마치고 이제 세상에 선보여야 할 때가 왔다. 첫 번째 문제 만든 프로젝트가 세상에 나오려고 알을 깨려는데, 껍질이 꽤 두껍다. 배포가 잘 안되었다. 배포가 안되는 이유는 여러가지 이유가 있었다. 첫 째로, CI 도구의 선택이다. Jenkins, Travis, Circle CI 등등. 굉장히 많은 CI 도구들이 있었고, 어느 것을 선택해야 할지 몰랐다. 단 한 번도 써본적이 없었기 때문이다. 배포라고 해봤자, EC2에 Github Repository에서 가져온 다음 EC2 환경에서 빌드하는 수준? 딱 그 정도 였다. 물론, 이 것도 당시에는 굉장한 큰 기쁨으..

[TFAE] 맥북 자바 버전 확인 및 자바 버전 변경하는 법

맥북을 사용하다 보면, 프로젝트 시 조건에 따라 버전을 달리 설정해야 할 때가 있다. 그럴 때 맨날 구글링 하는 것도 좋지만, 내 것을 보는 것이 더 도움이 될 것 같아서 작성한다. * 설치된 자바 경로 확인 /Library/Java/JavaVirtualMachines/ * 현재 시스템 상에서 사용중인 자바 버전 확인 java -version * 자바 버전 변경을 하고 싶다? 변경하고자 하는 자바의 경로를 복사한다. Home에서 소스 파일을 연다. bash_profile 혹은 zshrc 파일 (bash_profile 과 zshrc의 차이점) $vi ~/.zshrc​ 터미널 내 zshrc파일에서 JAVA_HOME을 찾아 JAVA_HOME의 값을 1번에서 복사한 경로로 붙여넣는다. 문서 수정하려면 (I)를 ..