1、Using non-qualified column reference
在hibernate中使用HQL直接對數據庫進行update、save、delete操作時,日志中會輸出:
- org.hibernate.hql.ast.tree.FromElementType -164767 [http-8080-Processor72] WARN - Using non-qualified column reference
org.hibernate.hql.ast.tree.FromElementType -164767 [http-8080-Processor72] WARN - Using non-qualified column reference
的警告信息。該警告實乃Hibernate-3.2.0版本的BUG,原因是hibernate執行HQL時沒有細分操作類型,日志記錄類型有誤,該BUG已在3.2.1中修復。
2、deleted object would be re-saved by cascade (remove deleted object from associations)
在hibernate 刪除關聯時會出現eleted object would be re-saved by cascade (remove deleted object from associations)的異常,結合別人的和自己的經驗通常有三種解決的方案:
方法1 刪除Set方的cascade:
方法2 解決關聯關系后,再刪除
onside.getManys().remove(thisMany); //在所關聯的一方的set中移走當前要刪除的對象
thisMany.setOne(null); //設置所對應的一方為空,解除它們之間的關系
manyDao.delete(thisMany);
方法3 在many-to-one方增加cascade 但值不能是none