2010-12-07 52 views
3

我有一个JPA实体,通过OneToMany关系具有子集合,并且我已经设置cascade = CascadeType.ALL但是当我保存父实体时它不保存任何对子集合进行的更改(即添加或删除),我不知道这是为什么。JPA,我怎么能告诉什么将被保存回数据库

知道是否有方法从JPA EntityManager等获取有关在事务结束时保存的内容的方法。

不知道该怎么做?调试这已经变得不可能。

+0

您是否设置了拥有网站,并带有“mappedBy”? – niels 2010-12-07 19:19:34

回答

5

查看SQL级别发生了什么的一个解决方案是打开hibernate上的调试。如果将log4j.properties文件添加到/ conf目录,则可以手动控制休眠日志输出。这是一个可以使用的示例配置文件。取消相应区域的注释以提高日志级别:

log4j.logger.org.hibernate=info 
### log just the SQL 
log4j.logger.org.hibernate.SQL=debug 

### log JDBC bind parameters ### 
log4j.logger.org.hibernate.type=debug 

### log schema export/update ### 
log4j.logger.org.hibernate.tool.hbm2ddl=info 

### log HQL parse trees 
#log4j.logger.org.hibernate.hql=debug 
相关问题