Backend/자바 Java (15) 썸네일형 리스트형 JpaRepository 사용버 출처 https://jobc.tistory.com/120 예시 내코드 Entity 먼저 데이터베이스에 저장하기 위해 유저가 정의한 클래스가 필요한데 그런 클래스를 Entity라고 한다. Domain이라고 생각하면 된다. 일반적으로 RDBMS에서 Table을 객체화 시킨 것으로 보면 된다. 그래서 Table의 이름이나 컬럼들에 대한 정보를 가진다. @Entity public class Member { @Id @GeneratedValue(strategy= GenerationType.IDENTITY) private Long userNo; @Column private String userID; @Column(length = 50, nullable = false) private String userId; @Col.. [SpringSecurity] 스프링시큐리티 세션정책 http .sessionManagement() .sessionCreationPolicy( SessionCreationPolicy.ALWAYS) - 스프링시큐리티가 항상 세션을 생성 .sessionCreationPolicy( SessionCreationPolicy.IF_REQUIRED) - 스프링시큐리티가 필요시 생성(기본) .sessionCreationPolicy( SessionCreationPolicy.NEVER) - 스프링시큐리티가 생성하지않지만, 기존에 존재하면 사용 .sessionCreationPolicy( SessionCreationPolicy.STATELESS) - 스프링시큐리티가 생성하지도않고 기존것을 사용하지도 않음 ->JWT 같은 토큰방식을 쓸때 사용하는 설정 출처: https://fen.. @EnabledGlobalMethodSecurity https://bob-full.tistory.com/24 @Id, @GeneratedValue : 데이터베이스 Primary key 자동생성 데이터베이스 테이블의 기본키Primary key를 선정하는 두 가지 방법 1. 자연키Natural key - 전화번호, 이메일처럼 비즈니스적으로 의미 있는 키. 2. 대체키Surrogate key - 비즈니스와 상관없이 임의로 만들어진 키. JPA(Java Persistence API)는 데이터베이스 테이블 대체키SurrogateKey를 기본 키로 자동 생성하는 기능을 지원 사용 방법: Entity클래스에 @Id, @GeneratedValue 어노테이션 추가 @GeneratedValue에 대체키 자동생성 전략 지정(4가지, 지정하지 않으면 AUTO가 디폴트) - AUTO(default) : JPA구현체가 자동으로 생성 전략을 결정. - IDENTITY : 기본키 생성을 데이터베이스에 위임. (MySQL:.. @OneToMany 단방향 https://jdm.kr/blog/141 JSP(Java Server Pages) gmlwjd9405.github.io/2018/11/03/jsp.html @Entity / @Id / @Column(name = "team_id") 출처 https://ithub.tistory.com/24 오늘은 Spring Data JPA 기본키 매핑하는 방법에 대해서 알아보겠습니다. Spring Data JPA 에서는 엔티티의 기본키를 @Id 어노테이션을 사용하여 설정합니다. @Entity public class Team { @Id @Column(name = "team_id") private Long id; (이하 생략) } 이때, 기본키를 할당하는 방법으로는 두가지가 있습니다. 직접할당 : 기본 키를 어플리케이션에서 직접 할당 해주는 방법 자동생성 : 데이터베이스가 자동으로 할당해주는 방법 (예를들어, 오라클은 sequence, MySQL의 auto_increment) 데이터베이스 벤더마다 sequence, auto_increment 등 기본키.. @ToString 출처 https://www.daleseo.com/lombok-popular-annotations/ ToString 메소드 자동 생성 toString() 메소드를 작성하는 것도 여간 귀찮은 일이 아닙니다. 하지만 Lombok을 사용하면 @ToString 어노테이션만 클래스에 붙여주면 자동으로 생성해줍니다. 예제와 같이 exclude 속성을 사용하면, 특정 필드를 toString() 결과에서 제외시킬 수도 있습니다. @ToString(exclude = "password") public class User { private Long id; private String username; private String password; private int[] scores; } 위와 같이 클래스에 @ToString 어.. @EqualsAndHashCode equals, hashCode 자동 생성 자바 빈을 만들 때 equals와 hashCode 메소드를 자주 오버라이딩 하는데요. @EqualsAndHashCode 어노테이션을 사용하면 자동으로 이 메소드를 생성할 수 있습니다. JPA / Hibernate / Spring Data JPA 출처: https://suhwan.dev/2019/02/24/jpa-vs-hibernate-vs-spring-data-jpa/ JPA는 기술 명세이다 JPA는 Java Persistence API의 약자로, 자바 어플리케이션에서 관계형 데이터베이스를 사용하는 방식을 정의한 인터페이스이다. 여기서 중요하게 여겨야 할 부분은, JPA는 말 그대로 인터페이스라는 점이다. JPA는 특정 기능을 하는 라이브러리가 아니다. 마치 일반적인 백엔드 API가 클라이언트가 어떻게 서버를 사용해야 하는지를 정의한 것처럼, JPA 역시 자바 어플리케이션에서 관계형 데이터베이스를 어떻게 사용해야 하는지를 정의하는 한 방법일 뿐이다. JPA는 단순히 명세이기 때문에 구현이 없다. JPA를 정의한 javax.persistence .. 이전 1 2 다음