전체 글

운동을 좋아하는 8년차 웹 개발자 입니다.
·SQL
순위 함수의 종류 순위함수의 종류는 아래와 같이 세가지가 있다. 해당 함수들은 중복값에대하여 어떻게 처리 할껀지에 따라서 사용 방법이 다르게 나뉘어 진다. RANK : 중복값이 있다면 동일한 순위로 지정되고 다음 값에 대해서는 중복된 값의 수만큼을 건너뛰고 출력된다. (ex. 1 - 2 - 3 - 3 - 3 - 6 - 7) DENSE_RANK : 중복값이 있다면 동일한 순위로 지정되고 다음 값에 대해서는 중복된 순위 다음 수가 출력된다. (ex. 1 - 2 - 3 - 3 - 4 - 5) ROW_NUMBER : 중복값과 상관없이 순위를 순차적으로 출력한다. (ex. 1 - 2 - 3 - 4 - 5) 기본 문법 SELECT 컬럼명 , RANK () OVER (ORDER BY 기준 컬럼명) AS RNAK FR..
·SQL
기본 문법 SELECT LISTAGG('대상 컬럼명', '구분자') WITHIN GROUP (ORDER BY '정렬기준 컬럼명') FROM '테이블 명' LISTAGG 함수 사용 예시 TEST_USER 테이블의 USER_NAME 컬럼을 USER_NAME 순으로 정렬하여 쉼표를 구분자로 한줄로 출력하고 싶을때 SELECT LISTAGG(USER_NAME, ',') WITHIN GROUP (ORDER BY USER_NAME) AS USER_NAME FROM TEST_USER
·Java
@author -- 클래스나 인터페이스의 제작자 표시 @version -- 버전 정보 @return -- 메써드가 void 형이 아닐경우 return 타입을 기술 @exception -- 메써드가 발생 시킬 수 있는 예외를 기술 @throws -- 위와 동일 @deprecated -- 다음버전에서 폐기된 메써드 알림 @param -- 매개변수에 대한 설명 (@param 변수 설명) @serial -- 기본적으로 직렬화 할 수 있는 클래스의 멤버를 설명 @see -- 참조표시 @since -- 위의 Tag 들이 언제 추가되었는지를 명시
·SQL
DDL 이란 ? 데이터 정의어 : 생성, 삭제, 수정하는데 사용하는 SQL 데이터 구조를 정의하는데 사용한다. DDL 명령어 CREATE : 테이블을 생성 합니다. CREATE TABLE [테이블 명] ( [컬럼명] [컬럼타입] [NULL허용여부] [컬럼명] [컬럼타입] [NULL허용여부] ... PRIMARY KEY (컬럼명) ); - 테이블 명 : 생성할 테이블 명을 지정한다. - 컬럼 명: 컬럼명을 지정한다. - 컬럼타입 : 컬럼 타입을 지정한다.(EX. CHAR(n), VARCHAR2(n), NUMBER, DATE) - NULL허용여부 : NULL 값을 허용할지 여부를 지정한다. 값을 생략하는 경우 NULL을 허용한다. DROP : 테이블을 삭제 합니다. DROP TABLE [테이블명]; - 테이..
·Front - End
로컬 변수 ( th:with ) 블럭내에서 유효한 변수를 정의 결과 값은 "30" 입니다. 결과 값은 "20" 입니다. 유사 블록 ( th:block ) 임의로 블록을 정의하는 속성 결과 값은 "30" 입니다. 결과 값은 "20" 입니다. 조건문 ( th:if / th:unless ) 특정 조건일때만 보여지거나 보여지지 않는 영역 설정이 필요할 때 사용 1이 0보다 크기 때문에 조건이 true 입니다. p태그 출력 1이 0보다 크기 때문에 조건이 false입니다. p태그 출력 조건문 ( th:switch / th:case ) 특정 값과 일치하는 부분만 보여지도록 설정 할 때 사용 username = user01 user01입니다. 해당내용만 출력 user02입니다. user03입니다. user04입니다...
·Front - End
text ( th:text ) 변수 값을 태그의 텍스트로 표시할 때 사용 th:text 속성과 ${....}구분을 같이 사용 text = hello world 결과 값은 "hello world" 입니다. unesape text ( th:utext ) escape 처리를 하지 않고 표시할 때 사용 test = "test" escape 처리시 = testescape 미처리시 = test 인라인처리 ( th:inline ) inline 속성에는 text 모드와 javascript 모드가 있다. 태그 내의 텍스트 일부를 Controller로 부터 전달된 변수 값으로 표시 할 경우 사용 // text 모드 Hello, [[${user.name}]] !!! //javascript 모드 삼항연산자 ( ?: ) 변수의..
·Front - End
변수식 : ${....} Context에 포함된 변수들을 사용할 수 있다. JSP에서 사용했던 방식과 비슷하다. text = hello world ... 결과값은 "hello world" 입니다. 링크식 : @{....} @표현식을 이용하여 URL을 표현 가능 test 메시지식 : #{....} 미리 정의된 message.propertis 파일이 존재하고 thymeleaf enfine에 등록이 되어있다는 전제하게 사용 가능하다. // message.propertis 파일 hello.world = HELLO WORLD /****************************************/ 결과값은 "HELLO WORLD" 입니다. 객체의 변수식 : *{....} th:object로 정의되어 있는 변수..
·Git
Commit Message 를 잘 작성해야하는 이유 더 좋은 커밋 로그 가독성 더 나은 협업과 리뷰 프로세스 더 쉬운 코드 유지보수 좋은 commit message 의 기준은 다르나 누구나 봤을때 한눈에 수정내용에 대해 알아볼수 있는 commit message 가 가장 좋다고 생각한다... 좋은 Commit Message 를 작성 하기위한 규칙 제목과 본문을 빈 행으로 구분한다 제목을 50글자 내로 제한 제목 첫 글자는 대문자로 작성 제목 끝에 마침표 넣지 않기 제목은 명령문으로 사용하며 과거형을 사용하지 않는다 본문의 각 행은 72글자 내로 제한 어떻게 보다는 무엇과 왜를 설명한다 참고 자료 : https://jason-api.tistory.com/89 https://meetup.toast.com/po..
wsstar
걷고 또 걷기