#30 jpa basic: jpql - bulk
This commit is contained in:
69
hello-jpa/src/main/java/com/hello/jpa/query/Bulk.java
Normal file
69
hello-jpa/src/main/java/com/hello/jpa/query/Bulk.java
Normal file
@@ -0,0 +1,69 @@
|
|||||||
|
package com.hello.jpa.query;
|
||||||
|
|
||||||
|
import com.hello.jpa.query.entity.Member;
|
||||||
|
import com.hello.jpa.query.entity.Team;
|
||||||
|
|
||||||
|
import javax.persistence.EntityManager;
|
||||||
|
import javax.persistence.EntityManagerFactory;
|
||||||
|
import javax.persistence.EntityTransaction;
|
||||||
|
import javax.persistence.Persistence;
|
||||||
|
|
||||||
|
public class Bulk {
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
EntityManagerFactory emf = Persistence.createEntityManagerFactory("hello");
|
||||||
|
|
||||||
|
EntityManager em = emf.createEntityManager();
|
||||||
|
|
||||||
|
EntityTransaction tx = em.getTransaction();
|
||||||
|
tx.begin();
|
||||||
|
|
||||||
|
try {
|
||||||
|
Team team = new Team();
|
||||||
|
team.setName("team1");
|
||||||
|
em.persist(team);
|
||||||
|
|
||||||
|
Team team2 = new Team();
|
||||||
|
team2.setName("team2");
|
||||||
|
em.persist(team2);
|
||||||
|
|
||||||
|
Member member = new Member();
|
||||||
|
member.setName("member1");
|
||||||
|
member.setTeam(team);
|
||||||
|
em.persist(member);
|
||||||
|
|
||||||
|
Member member2 = new Member();
|
||||||
|
member2.setName("member2");
|
||||||
|
member2.setTeam(team);
|
||||||
|
em.persist(member2);
|
||||||
|
|
||||||
|
Member member3 = new Member();
|
||||||
|
member3.setName("member3");
|
||||||
|
member3.setTeam(team2);
|
||||||
|
em.persist(member3);
|
||||||
|
|
||||||
|
// flush 자동 호출
|
||||||
|
int resultCount = em.createQuery("update Member m set m.age = 20")
|
||||||
|
.executeUpdate();
|
||||||
|
|
||||||
|
System.out.println("resultCount = " + resultCount);
|
||||||
|
|
||||||
|
// 영속성 컨텍스트에 남아 있으므로 초기화 해야함
|
||||||
|
Member findMember = em.find(Member.class, member.getId());
|
||||||
|
System.out.println("findMember = " + findMember);
|
||||||
|
|
||||||
|
em.clear();
|
||||||
|
Member findMember2 = em.find(Member.class, member.getId());
|
||||||
|
System.out.println("findMember = " + findMember2);
|
||||||
|
|
||||||
|
tx.commit();
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
tx.rollback();
|
||||||
|
} finally {
|
||||||
|
em.close();
|
||||||
|
}
|
||||||
|
|
||||||
|
emf.close();
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user