profile
성장형 인간

@Data 지양이유

@ToString, @Getter, @Setter, @EqualsAndHashCode, @RequiredArgsConstructor을 한번에 사용하는 강력한 어노테이션Setter는 그 의도가 분명하지 않고 객체를 언제든지 변경할 수 있는 상태가 되어서 객체의 안전성이

약 11시간 전
·
0개의 댓글
post-thumbnail

RestTemplate

spring 3.0부터 지원기계적이고 반복적인 코드를 최대한 줄여줌Restful 형식에 맞춤json, xml 를 쉽게 응답 받을 수 있음jdk 1.2부터 내장되어 있으며 java.net 패키지에 있다. URL의 내용을 읽어오거나 URL 주소에 GET, POST로 데이터

2022년 1월 20일
·
0개의 댓글

MockMvc

실제 객체와 비슷하지만 테스트에 필요한 기능만 가지는 가짜 객체를 만들어서 애플리케이션 서버에 배포하지 않고도 스프링 MVC 동작을 재현할 수 있는 클래스를 의미합니다.Junit4를 사용하기 위해 의존성에 spring-boot-starter-test를 추가해줍니다.bu

2022년 1월 16일
·
0개의 댓글

Git 브랜치 변경방법

기존 브랜치 체크아웃git checkout old_branch신규 브랜치명으로 변경git branch -m new_branch기존 브랜치 삭제git push origin :old_branch신규 브랜치 upstream으로 지정git push --set-upstream

2022년 1월 12일
·
0개의 댓글

@ModelAttribute

@ModelAttribute 선언 후 자동으로 진행되는 작업1\. @ModelAttribute 어노테이션이 붙은 객체를 자동으로 생성한다.이 때 @ModelAttribute가 지정되는 클래스는 빈 클래스여야 한다.그리고 getter와 setter가 명명 규칙에 맞게 만

2022년 1월 11일
·
0개의 댓글

git이 추적하지 않는 untracked files 한꺼번에 삭제하기

untracked 파일 모두 삭제git clean -funtracked 파일 및 디렉터리까지 삭제git clean -fd지워질 파일을 미리 확인git clean -fd --dry-run

2022년 1월 10일
·
0개의 댓글

Postgresql DB Dump

형식pg_dump -d DB_NAME -U 사용자이름 > db backup 파일명예시pg_dump -d testDB -U test > test_db_back.sqlpg_dump 를 이용하면 SQL 형식으로 쿼리가 출력되기 때문에 복원하려는 PostgreSQL 버전이 다

2022년 1월 10일
·
0개의 댓글

[AOP] JoinPoint 와 바인드 변수

클라이언트가 호출한 메소드의 시그니처 (리턴타입, 이름, 매개변수) 정보가 저장된 Signature 객체를 리턴클라이언트가 호출한 비즈니스 메소드를 포함하는 비즈니스 객체를 리턴(해당 클래스 객체를 리턴)클라이언트가 메소드를 호출할 때 넘겨준 인자 목록을 Object

2022년 1월 6일
·
0개의 댓글
post-thumbnail

@WebFilter

Filter 등록을 위한 AnnotationServlet 3.0 이상 사용 가능톰캣 7이상에서 사용 가능1) Annotation 맵핑 URL을 입력하는 방법@WebFilter("/target")2) Annotation 와일드카드 사용하는 방법@WebFilter("/\*

2021년 12월 24일
·
0개의 댓글

Annotation

built-in 어노테이션Java 코드에 적용되는 어노테이션@Override, @Deprecated, @SuppressWarnings 등이 존재meta 어노테이션다른 어노테이션에 적용되기 위한 어노테이션@Retention, @Documented, @Target, @In

2021년 12월 22일
·
0개의 댓글

오류모음

메소드 파라미터나 리턴 값에 문제가 있으면 ConstraintViolationException 오류가 발생합니다.500 error@ModelAttribute 나 @RequestBody 처리를 위해 데이터 바인딩 중에 Validation 오류가 있을 경우 발생하는 오류입

2021년 12월 22일
·
0개의 댓글

@Value

속성 파일(ex: application.yml)에 정의된 값을 사용할 수 있는 어노테이션application.yml에 정의한 value.from.file 값을 valueFromFile 변수에 할당만약 value.from.file 값이 정의되어 있지 않다면 some de

2021년 12월 14일
·
0개의 댓글

[Lombok]

필드에 @Getter나 @Setter를 붙인다면 lombok이 해당 필드에 대한 기본 getter / setter를 생성해줍니다.순수 자바 코드롬복코드생성되는 getter / setter에 명시적으로 AccessLevel을 명시해주지 않으면 접근 제한자는 public이

2021년 12월 9일
·
0개의 댓글
post-thumbnail

[PostgreSQL] Vaccum

PostgreSQL의 쓰레기 데이터 청소디스크 조각 모음과 유사PostgreSQL은 데이터 갱신(Update), 삭제(Delete)시 디스크에 있던 기존 정보를 갱신하거나 삭제하지 않음\-> 기존 정보 변경되었다는 표시를 남기고 새롭게 디스크에 갱신(Update)된 정

2021년 12월 8일
·
0개의 댓글

[Spring] AOP

@Aspect Annotation의 경우 해당 Class가 횡단관심사(부가기능) Class임을 알려주는 Annotation입니다.@Aspect Annotation이 부여되었다고 해서 자동으로 Bean으로 등록되는것이 아니므로 따로 Bean으로 등록을 해주는 작업이 필요

2021년 11월 30일
·
0개의 댓글

[Spring] AOP PointCut 표현식

수식어: public, private 등 수식어를 명시합니다. (생략 가능)리턴타입: 리턴 타입을 명시합니다.클래스이름 및 이름: 클래스이름과 메서드 이름을 명시합니다. (클래스 이름은 풀 패키지명으로 명시해야합니다. 생량가능)파라미터: 메서드의 파라미터를 명시합니다.

2021년 11월 30일
·
0개의 댓글

[JAVA] 불변객체

불변 객체란 객체 생성 이후 내부의 상태가 변하지 않는 객체이다.불변 객체는 read-only 메소드만을 제공하며 객체의 내부 상태를 제공하는 메소드를 제공하지 않거나 제공하는 경우 방어적 복사(defensive-copy)를 통해 제공한다.Java의 대표적인 불변 객체

2021년 11월 29일
·
0개의 댓글

[JAVA] 빌더 패턴(Builder Pattern)을 사용해야 하는 이유

필요한 데이터만 설정할 수 있음유연성을 확보할 수 있음가독성을 높일 수 있음불변성을 확보할 수 있음예를 들어 User 객체를 생성하는데 age라는 parameter가 필요 없는 상황이라고 가정.생성자나 정적 메소드를 이용하는 경우라면 우리는 age에 더미 값을 넣어주거

2021년 11월 29일
·
0개의 댓글
post-thumbnail

[PostgreSQL] JSON 타입 handling

테스트 데이터 만들기 문자열 합치기 테이블 전체를 JSON 만들기 다중 행을 JSON 만들기 전체 열을 행 단위로 JSON 만들기 특정 열만 행 단위로 JSON 만들기 특정 열만 열 단위로 JSON 만들기 특정 열을 기준, 지정한 구분자로 문자열 만들기

2021년 11월 11일
·
0개의 댓글
post-thumbnail

[Java] Thread Local

ThreadLocal은 한 쓰레드에서 읽고 쓰여질 수 있는 변수를 할당하여 접근할 수 있도록 합니다. 멀티 쓰레드 환경에서 각 쓰레드마다 get(), set() 메서드를 통해 독립적으로 변수에 접근 할 수 있습니다. 말그대로 Thread 내부에서 사용하는 지역변수입니다

2021년 11월 10일
·
0개의 댓글