SNS 포토그램 만들기 (셋팅 + 어노테이션 정리)

송용준·2023년 4월 11일
post-thumbnail

셋팅

  1. 자바 버전 맞추기 : 환경변수 검색 -> 환경변수 -> 시스템 변수의 JAVA_HOME이랑 PATH에 자바 설치되어있는 경로 넣기

  2. 프로젝트 우클릭 -> Properties -> Project Facets -> java 버전 맞추기

  3. 프로젝트 우클릭 -> Properties -> Libraries -> installed

  4. 구글링 하기!

프로젝트

Config

securityConfig.java

  1. @EnableWebSecurity : 시큐리티를 활성화
  2. @Bean : 별도 외부 라이브러리 등록

domain.user

User.java

  1. @Builder : DB에서 쓸 인자들을 다 모아놓음
  2. @AllArgsConstructor : 모든 필드 값을 파라미터로 받는 생성자를 만듦. EX) User user3 = new User(1L, "user3", "1234", null);
  3. @NoArgsConstructor : 파라미터가 없는 기본 생성자를 생성. EX) User user1 = new User();
  4. @Data : @Getter, @Setter, @RequiredArgsConstructor, @ToString, @EqualsAndHashCode을 한꺼번에 설정
  5. @Entity : 테이블과 매핑. JPA가 관리
  6. @Id : 기본키 매핑
  7. @GeneratedValue(strategy = GenerationType.IDENTITY) : 기본키(id)를 자동으로 생성
  8. @Column : 객체 필드를 테이블 컬럼에 매핑
  9. @PrePersist : 디비에 insert 되기 직전에 실행

UserRepository.java

JpaRepository를 상속받아 어노테이션 없이도 Ioc에 자동 등록하게 함

service

AuthService.java

  1. @RequiredArgsConstructor : 생성자 주입
  2. @Service : service단. 트랜잭션 관리
  3. @Transactional : Write(Insert, Update, Delete) 할때 사용

web

authController.java

  1. @Controller : File을 응답하는 컨트롤러, 클라이언트가 브라우저일 때 사용 (@RestController : Data를 응답하는 컨트롤러, 클라이언트가 핸드폰일 때 사용)
  2. @GetMapping : get방식 url 요청 후 작업
  3. @PostMapping : post방식 url 요청 후 작업
  4. @Valid : 만들어 놓은 밸리데이션 사용
  5. @ResponseBody :

handler

ControllerExceptionHandler.java

  1. @ExceptionHandler : 예외 낚아채기

CustomValidationException.java

--> 예외처리 custom으로 만들어 놓기

profile
용용

0개의 댓글