【发布时间】:2015-10-10 16:13:59
【问题描述】:
我已经在persistence.xml中设置了属性
<property name="hibernate.show_sql" value="true" />
但是!当我执行具有插入 SQL 和选择 SQL 的方法的源时,我在控制台上看不到有关选择 SQL 的日志。只是我可以看到有关插入 SQL 的日志。
为什么?这是正确的?
public class JpaMain
{
public static void main(String[] args) {
EntityManagerFactory emf = Persistence.createEntityManagerFactory("jpabook");
EntityManager em = emf.createEntityManager();
EntityTransaction tx = em.getTransaction();
try{
tx.begin();
System.out.println("###########save start#################");
save(em);
System.out.println("###########save end#################");
System.out.println("###########find start#################");
find(em);
System.out.println("###########find end#################");
tx.commit();
}
catch(Exception e) {
e.printStackTrace();
tx.rollback();
}
finally{
em.close();
}
emf.close();
}
public static void save(EntityManager em) {
Product productA = new Product();
productA.setId("productA");
productA.setName("pA");
em.persist(productA);
Member member1 = new Member();
member1.setId("member1");
member1.setUsername("m1");
member1.getProducts().add(productA);
em.persist(member1);
}
public static void find(EntityManager em) {
for (Product product : em.find(Member.class, "member1").getProducts()) {
System.out.println(product.getName());
}
}
}
【问题讨论】: