inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

자바 ORM 표준 JPA 프로그래밍 - 기본편

기본 키 매핑

jpa 처음 공부하는 학생입니다 ㅠ복습하다가 질문드립니다!

298

조인태

작성한 질문수 5

0

package hellojpa;

import javax.persistence.*;

public class JpaMain {
public static void main(String[] args) {
EntityManagerFactory emf = Persistence.createEntityManagerFactory("hello");

EntityManager em =emf.createEntityManager();

EntityTransaction tx = em.getTransaction();
tx.begin();
try {
// Member member1 = new Member();
// member1.setName("gggg");
// Member member2 = new Member();
// member1.setName("gggg2");
// em.persist(member1);
// em.persist(member2); <-이렇게 하면
//Hibernate:
// call next value for hibernate_sequence
//Hibernate:
// call next value for hibernate_sequence 이렇게 나오고 insert문이 안나오고
// 데이타베이스에 커밋이 안되구요
Member member1 = new Member();
member1.setName("gggg");
Member member2 = new Member();
em.persist(member1); //<-이렇게 하면 insert문도 정상적으로 나오는데 차이점을 모르겠어요 ㅠㅠ


tx.commit();
}catch (Exception e) {
tx.rollback();
}finally {
em.close();;
}
emf.close();
}
}

package hellojpa;

import javax.persistence.*;
import java.util.Date;

@Entity
public class Member {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "ID")
private Long id;
@Column(name = "NAME",nullable = false,length = 10)
private String name;
private Integer age;
@Enumerated(EnumType.STRING)
private RoleType roleType;
@Temporal(TemporalType.TIMESTAMP)
private Date createdDate;
@Temporal(TemporalType.TIMESTAMP)
private Date lastModifedDate;
@Lob
private String description;

public Long getId() {
return id;
}

public void setId(Long id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public Integer getAge() {
return age;
}

public void setAge(Integer age) {
this.age = age;
}

public RoleType getRoleType() {
return roleType;
}

public void setRoleType(RoleType roleType) {
this.roleType = roleType;
}

public Date getCreatedDate() {
return createdDate;
}

public void setCreatedDate(Date createdDate) {
this.createdDate = createdDate;
}

public Date getLastModifedDate() {
return lastModifedDate;
}

public void setLastModifedDate(Date lastModifedDate) {
this.lastModifedDate = lastModifedDate;
}

public String getDescription() {
return description;
}

public void setDescription(String description) {
this.description = description;
}
}

JPA java

답변 2

0

조인태

오타였습니다...... 답변 감사합니다 ㅠ

0

David

안녕하세요. 조인태님, 공식 서포터즈 David입니다.
.
위에 주석처리한 코드도 저장되어야 정상입니다.

주석처리된 코드로 실행하신 후 발생하는 로그를 캡쳐해주실 수 있으실까요?

 

질문과 별개로

member2는 setName을 안 해주신 것이 맞으신가요?

member1만 setName을 2번 해주셨네요.


.
감사합니다.

벌크연산에서 member.getAge 호출 시 영속성 컨텍스트에서 데이터를 가져오는건가요?

0

13

2

inheritance startegy 선택시 고려사항

0

20

1

Entity 동등성 비교

0

17

1

실무 조언 관련 질문입니다.

0

44

1

H2데이터베이스 파일 생성

0

55

2

서브쿼리 강의에서 ALL 예시 관련 질문드립니다.

0

52

2

수정또는 삭제시 영속성 엔티티에 값이 무조건 있어야 하나요?

0

51

1

JPQL 메소드와 락

0

55

1

Delivery @OneToOne

0

60

1

17강 4~5분대 테이블 값 조회가 안됩니다.

0

92

2

UnsupportedOperationException 발생

0

85

3

H2 Database 연결이 안됩니다.

0

92

2

연관관계 매핑 질문드립니다.

0

84

2

h2데이터베이스 실행오류

0

107

2

persistence.xml

0

106

2

양방향 연관관계에서 연관관계의 주인(mappedBy)을 왜 꼭 정해야 하나요?

0

79

1

영속성 컨텍스트

0

64

1

JPA 프록시

0

94

1

Native Query와 MyBatis

0

66

1

영속성 컨텍스트는 어떤 메모리에 저장되는건가요?

0

85

1

임베디드 타입 예시 코드 관련 질문

0

114

3

명시적 조인에서 별칭을 주면 왜 객체에 접근할 수 있나요

0

93

3

인텔리제이 패키지 커서 단축키 질문

0

108

2

혹시 현재는 ID 데이터 타입이 String이면 안되나요?

0

142

1