windchill PersistenceServerHelper 和 PersistenceHelper 区别

我们知道Windchill 经常用的持久化的方法,PersistenceServerHelper.manager.insert
和 PersistenceHelper .manager.save 虽然一直在用,也关注过区别,但一直没有记录下来,导致是不是需要翻源码判别,所以特意写个文章做下记录。

先来看 PersistenceServerHelper.manager.insert 部分源码
·windchill PersistenceServerHelper 和 PersistenceHelper 区别

从这部分代码可以看出,.insert 方法

  1. 启动了事务
  2. 直接pom操作,执行数据库

再来看 PersistenceHelper .manager.save
windchill PersistenceServerHelper 和 PersistenceHelper 区别

图片2
windchill PersistenceServerHelper 和 PersistenceHelper 区别

从这部分代码可以看出

  1. 启动了事务
  2. 做了属性检查、还有权限检查
  3. 之后其实还是调用了 insert方法

所以总结以上代码, PersistenceHelper 里的持久化方法 比PersistenceServerHelper 里面的持久化方法主要是做了 权限、属性的一系列的检查。在开发中,应当尽量使用PersistenceHelper 。