我开始使用Playframework进行新项目,并想尝试将其与Ebean ORM一起使用。我现在想知道的是,使用Ebean实施实现是否支持托管实体,如果可以,如何?从控制器中采用以下示例方法:
@Transactional
public Result changePassword() {
Long userId = Long.valueOf(session("id"));
User user = User.find.byId(userId);
user.setName("John Doe");
}
事务结束时,是否有任何方法可以将更改保存到数据库?目前我正在打电话user.save()
。这虽然不多,但是与JEE / JPA(以及最近的Dropwizard)一起工作时,我习惯于在交易结束时持久保存我的实体更改。
不,我不认为Play本身支持您想要的自动保存事务之类的功能。显式保存方法是唯一的选择。
Ebean.save(xyz);
有关代码的一般建议,来自Play 2.3.x,如果您是User EBean上的唯一操作,则无需注释或明确提及该事务。默认情况下,对EBean的每个操作都将在单独的事务中执行。如果需要在单个事务中执行多个动作,则可以显式指定事务。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句