Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
Tags
- spring-webmvc
- IntelliJ
- spring-mvc
- ApplicationPidFileWriter
- spring bean
- spring pid
- REST API
- spring jpa
- batch
- spring boot tomcat
- SuperTypeToken
- JUnit
- spring boot
- ORM
- JPA
- spring batch 코드
- docker
- spring-webmvc #코드읽기
- 톰캣
- JPA mapping
- tomcat
- Spring Data JPA
- 코드 리뷰
- Data REST
- Spring Batch
- Spring Data REST
- spring camp
- Spring
- 세미나
- static inner class
Archives
- Today
- Total
woniper
[JPA] @OneToOne, 1:1 관계 매핑 본문
- JPA란 무엇인가?
- JavaSE 환경에서 JPA 설정 및 CRUD
- JavaEE 환경(Spring)에서 JPA 설정 및 CRUD
- @OneToOne, 1:1 관계 매핑
- @OneToMany / @ManyToOne, 1:N / N:1 관계 매핑
- @ManyToMany, N:M 관계 매핑
- Entity 객체 생명주기(Lifecycle)와 Persistence Context
Table 관계도
Entity
@Entity public class Person { @Id @GeneratedValue private int id; private String name; @OneToOne @JoinColumn(name = "cellular_id") private Cellular cellular; public Person() {} public Person(String name, Cellular cellular) { this.name = name; this.cellular = cellular; } // getter and setter @Override public String toString() { return "Person{" + "id=" + id + ", name='" + name + '\'' + ", cellular=" + cellular + '}'; } } @Entity public class Cellular { @Id @GeneratedValue private int id; private int number; public Cellular() {} public Cellular(int number) { this.number = number; } // getter and setter @Override public String toString() { return "Cellular{" + "id=" + id + ", number=" + number + '}'; } }
TEST
public class OneToOneTest { @Autowired private EntityManagerFactory entityManagerFactory; private EntityManager entityManager; @Test public void oneToOneTest() { Cellular cellular = new Cellular(); cellular.setNumber(521); entityManager.persist(cellular); Person person = new Person(); person.setName("woniper"); person.setCellular(cellular); entityManager.persist(person); Assert.assertEquals(person.getCellular().getId(), cellular.getId()); } @Before public void setUp() throws Exception { entityManager = entityManagerFactory.createEntityManager(); entityManager.getTransaction().begin(); } @After public void after() { entityManager.getTransaction().commit(); entityManager.close(); } }
'Framework' 카테고리의 다른 글
[JPA] @ManyToMany, N:M 관계 매핑 (0) | 2015.05.12 |
---|---|
[JPA] @OneToMany / @ManyToOne, 1:N / N:1 관계 매핑 (0) | 2015.05.12 |
[JPA] JavaEE 환경(Spring)에서 JPA 설정 및 CRUD (0) | 2015.05.02 |
[JPA] JavaSE 환경에서 JPA 설정 및 CRUD (2) | 2015.05.02 |
[JPA] JPA란 무엇인가? (11) | 2015.05.01 |
Comments