분류 전체보기

스프링 데이터 JPA가 제공하는 마법 같은 기능 쿼리 메소드 기능 3가지메소드 이름으로 쿼리 생성메소드 이름으로 JPA NamedQuery 호출@Query 어노테이션을 사용해서 리파지토리 인터페이스에 쿼리 직접 정의메소드 이름으로 쿼리 생성메소드 이름을 분석해서 JPQL 쿼리 실행 예를들어 이름과 나이를 기준으로 회원을 조회하려면?순수 JPA 리포지토리@Repository@RequiredArgsConstructorpublic class MemberJpaRepository { private final EntityManager em; ... public List findByUsernameAndAgeGreaterThan(String username, int age) { return em..
공통 인터페이스 설정JavaConfig 설정- 스프링 부트 사용 시 생략 가능@Configuration@EnableJpaRepositories(basePackages = "jpabook.jpashop.repository")public class AppConfig {}스프링 부트 사용시 @SpringBootApplication 위치를 지정(해당 패키지와 하위 패키지 인식)만약 위치가 달라지면@EnableJpaRepositories 필요public interface MemberRepository extends JpaRepository {}@SpringBootTest@Transactionalclass MemberJpaRepositoryTest { @Autowired MemberJpaRepositor..
·JPA/JPA 정리
엔티티// Non Owner Entity@Entitypublic class Post { @Id @Column(name = "post_id") @GeneratedValue(strategy = GenerationType.IDENTITY) private int id; private String title; private String content; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getTitle() { return title; } public void setTitle(Str..
·JPA/JPA 정리
양방향 조회엔티티@Entitypublic class Passport { @Id @Column(name = "PASSPORT_ID") @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String number; @OneToOne(mappedBy = "passport", cascade = CascadeType.ALL, fetch = FetchType.LAZY) private Person person; public Person getPerson() { return person; } public void setPerson(Person person) { ..
an_jjin
'분류 전체보기' 카테고리의 글 목록 (16 Page)