JPA,我怎么知道将保存回数据库的内容

时间:2010-12-07 18:31:47

标签: jpa playframework

我有一个JPA实体,通过OneToMany关系有子集合,我设置了cascade = CascadeType.ALL但是当我保存父实体时,它不保存对子集合所做的任何更改(即添加或删除),I不知道为什么会这样。

知道是否有办法从JPA EntityManager等获取有关在交易结束时将保存的内容的信息将会很有用。

不确定怎么做?调试这个已经不可能了。

1 个答案:

答案 0 :(得分:5)

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

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