note

  • 1:ID生成策略

2:Composite id(注解定义的三种方式)

3:opensession vs getcurrentsession

     opensession 打开的session需要显式close; getcurrentsession不需要,事务提交后自动close

4: current_session_context_class

    常用的thread, jta

    thread:指明session的事务是依赖于connection的(针对一种数据库)

    jta:指明session的事务是分布式的(针对多个数据库)

5:对像的三种状态

   区分原则:

   对象有没有ID;ID在不在DB里面;ID在不在内存里面

note_第1张图片

 6:调用session的update方法的时候只更新此次发生变化的属性

  • 设定property标签的update属性,或者@Column的updatable属性
  • 设置XML映射文件里面Class 的 dynamic-update 属性为true,只能用在XML里面,JPA注解不支持
  • 第一种方式在跨session(第一个session加载对象并更新,OK没问题,然后用第二个session更新,问题出现)的时候不起作用,但是可以通过调用session的merge(object)方法解决。
  • 使用HQL

  7:关联映射

  • 一对一单向外键关联

你可能感兴趣的:(thread,xml,jpa)