댓글과 게시글의 관계
게시글을 보면, 하나의 게시글에 수많은 댓글이 달린다.
이러한 관계를 one-to-many (일대다 관계 - 1:n)라고 한다.
거꾸로 댓글 입장에서 보면, 여러 댓글이 하나의 게시글에 달리므로, many-to-one, 즉 다대일 관계이다.
@JoinColumn(name="외래키 이름") 을 설정하면, 댓글 엔티티로 생성될 DB 테이블에 "외래키 이름"이라는 속성이 만들어진다. artilce 필드에 다대일 관계를 설정했으면, 외래키도 매핑해줘야 한다. 바로 기본키와 매칭을 해주야 함.
JpaRepository에서
@Query 어노테이션
resource > META-INF > orm.xml 로 xml 코드 만들기 (무조건 이름 똑같이 해야 인식됨)
엔티티 매핑을 위한 xml 틀 코드 (기본)
<?xml version="1.0" encoding="utf-8" ?>
<entity-mappings xmlns="https://jakarta.ee/xml/ns/persistence/orm"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://jakarta.ee/xml/ns/persistence/orm
https://jakarta.ee/xml/ns/persistence/orm/orm_3_0.xsd"
version="3.0">
</entity-mappings>
entity-mappings 사이에 들어가는 코드는 아래와 같다. 엄밀히 말하면 코드형식이.
주석으로 들어가는 내용
<named-native-query name = "쿼리 대상 엔티티.메서드 이름"
result-class = "쿼리 수행 결과 반환하는 타입의 전체 패키지 경로">
<query>
<![CDATA[
// 쿼리 //
]]>
</query>
</named-native-query>
'Backend > Spring' 카테고리의 다른 글
스프링 빈과 의존관계 (0) | 2024.03.27 |
---|---|
[Spring] 인텔리제이 intellij에서 gradle 빌드로 바꿨을 때 오류 (0) | 2023.08.29 |
[Spring] 테스트 코드 작성하기 (1) | 2023.08.29 |
[Spring] 서비스 계층과 트랜젝션* (1) | 2023.08.29 |
[Spring] REST API로 CRUD 구현하기 (+ 실습)* (1) | 2023.08.27 |