IT'S DO
API REST API를 위한 @PathVariable 사용법
개발/API 2022. 7. 21. 16:57

@PathVariable 이란? REST API에서 URI에 변수가 들어가는걸 실무에서 많이 볼 수 있다. 예를 들면, 아래 URI에서 밑줄 친 부분이 @PathVariable로 처리해줄 수 있는 부분이다. http://localhost:8080/api/user/1234 https://music.bugs.co.kr/album/4062464 사용법 Controller에서 아래와 같이 작성하면 간단하게 사용 가능하다. @GetMapping(PostMapping, PutMapping 등 다 상관없음)에 {변수명} 메소드 정의에서 위에 쓴 변수명을 그대로 @PathVariable("변수명") (Optional) Parameter명은 아무거나 상관없음(아래에서 String name도 OK, String emplo..

article thumbnail
@EntityListeners @MappedSuperClass @CreatedDate @Column(updatable = false) 어노테이션
개발/JPA 2022. 7. 21. 16:14

JPA의 기본 테이션들은 JPA의 시작과 동시에 끝이라고함. @MappedSuperclass @EntityListeners(AuditingEntityListener.class) @Audited public abstract class BaseTimeEntity { @CreatedDate //생성할 때 자동저장 private LocalDateTime createdDate; @LastModifiedDate //수정할 때 자동저장 private LocalDateTime modifiedDate; } @MappedSuperClass @MappedSuperClass 은 엔티티의 공통 매핑 정보가 필요할 때 주로 사용한다. 즉, 부모 클래스(엔티티)에 필드를 선언하고 단순히 속성만 받아서 사용하고싶을 때 사용하는 방법..

jpa envers 테이블 칼럼 열 의미 #REV , #REVTYPE, #Enum
개발/JPA 2022. 7. 21. 16:09

REV(revision pk): 수정 번호 REVTYPE(revision type): 생성, 수정, 삭제가 enum으로 관리되는데, 아쉽게도 DB에는 숫자로만 표현되니.. 숫자만 보고 뭘 의미하는지 알아야한다 0 add(insert) 1 modify(update) 2 delete envers를 테스트 할 겸 데이터를 추가, 수정, 삭제해봤다. ​ REV가 1인 row는 초기 데이터 값 REV가 2인 row는 REVTYPE이 0이므로 데이터 추가 REV가 3인 row는 REVTYPE이 1이므로 데이터 수정 REV가 4인 row는 REVTYPE이 2이므로 데이터 삭제 Enum class란? 우리가 흔히 상수를 정의할 때 final static string 과 같은 방식으로 상수를 정의를합니다. 하지만 이렇게..

@GeneratedValue 자동 생성 전략
개발/JPA 2022. 7. 21. 16:03

@Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @Id @GeneratedValue(strategy=GenerationType.AUTO) public Integer gettId() { return id; } @GeneratedValue는 주키의 값을 위한 자동 생성 전략을 명시하는데 사용한다. 선택적 속성으로 generator와 strategy가 있다. strategy는 persistence provider가 엔티티의 주키를 생성할 때 사용해야 하는 주키생성 전략을 의미한다. 디폴트 값은 AUTO이다. generator는 SequenceGenerator나 TableGenerator 애노테이션에서 명시된 주키 생성자를 재사용..