1、用来更新detached对象,更新完成后转为persistent状态
2、更新无ID或者记录不存在的transient对象会报错
3、更新已设定ID的transient对象可以(数据库必须有相对应记录)
4、persistent状态的对象只要设定不同字段就会发生更新
5、更新部分更改的字段
A、XML设定property标签的update属性,annotation设定@Column的updateable属性,不过这种方式很少使用,因为其不灵活
B、使用XML中的dynamic-update属性,JPA1.0 Annotation没有对应的属性
  同一个session可以,跨session不行,不过可以用merge()
C、使用HQL(EJBQL)(推荐使用此方法)
  如下例:
        StudentPK pk = new StudentPK();
        pk.setId(
1);
        pk.setName(
"s1");
        Session session2 
= sessionFactory.getCurrentSession();
        session2.beginTransaction();
        Query q 
= session2.createQuery("update Student s set s.age=40 where s.pk=pk");
        q.executeUpdate();
        session2.getTransaction().commit();
注意SQL里的是类里的对象或者属性,而不是数据表或者字段。