Polyforms——削减DAO代码反复[Java编程]
本文“Polyforms——削减DAO代码反复[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
Polyforms项目的目标是剔除用于绑定数据拜候对象和底层长期化API的反复代码.该框架采取的办法是自动实现开辟人员定义的Repository接口上的服务办法.接口中定义的办法默许通过命名法则衔接到数据库操作上.比方,项目wiki上谈论了如作甚User实体对象实现一个存储.首先,存储的API必须定义成:
public interface UserRepository extends EntityRepository<User, String> {
@Finder
List<User> findByCreator(User creator);
}
@Finder注释标志了Polyforms的办法.接下来,不要实现UserRepostiory,而是通过别的的注释在User实体中供应一个匹配Hibernate的查询.
@NamedQueries({
@NamedQuery(name = "User.findByCreator", query = "select u from User u where u.creator = :creator"),
})
public class User {
...
}
按照文档,用于查找查询语句的命名法则是基于办法名和实体名:
命名查询的映射法则是[name of Named Query] = [name of Entity].[name of method].你可以通过@Finder指定命名查询的名字,如@Finder("findUserByName"),然后命名查询的名字会是“User.findUserByName”.
除了@Finder注释,还有@Updater和@Counter辨别供应了对大规模更新和查询计数的支持.
EntityRepository
父接口已经支持保存单实体、删除和通过标识符获得的功效.
全部这些衔接都是通过
Spring framework
完成的,并依靠Spring的切面来供应API的动态实现.
Polyforms支持的其他功效包含:
跟踪信息(成立者、成立日期、改正者、改正日期)的自动管理
透明的分页支持
通过注释定义事件边界
域事件模子,别离长期化事件和利勤奋效.
以上是“Polyforms——削减DAO代码反复[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |