先解释几个注解:
cascade :设置当你进行什么操作时,会产生级联效果,all的时候是当你增删改 (查是 fetch来管,lazy)的时候会进行级联。
get 和 load 的区别:
* get不支持延迟加载,而load支持。
* 当查询特定的数据库中不存在的数据时,get会返回null,而load则抛出异常。
session.get()方法 直接发出sql查询语句
session.load()方法 当你使用对象的时候 才真正发出sql查询语句
lazy ,延迟加载
Lazy 的有效期:只有在 session 打开的时候才有效; session 关闭后 lazy 就没效了。
在 1对多(User和userType)的双向关联中,如果是查1方(UserType),不设置fetch的话,不会进行级联查找,如果是查多方(User),默认是会级联查找。