基础服务

基于系统中记录的领域模型结构、行为信息,metawork提供了一系列的基础服务。本章描述这些基础服务。称作基础服务,区别于后面一章所讲述的"基础业务",本章所讲数的内容偏向于从技术角度考虑的通用组件、服务实现,他们是下一章所讲述的基础业务的基石。

1.通用服务(CommonService<T,PK>)

此处"通用服务"指代系统中的CommonService组件,也就是net.lingdot.metawork.core.service.CommonService类。这个类提供了以持久化为主体的许多方法。其中包含了类型为EntityRepository的仓储实现(实际的实现是net.lingdot.metawork.core.repository下面的Hibernate实现)。这个类里面的具体逻辑很简单,这里不再赘述。需要注意的是,我们扩展Spring做了一个BeanPostProcesser,解决了通用服务重复配置的问题。

在很多情况下,很多领域模型没有必要拥有其特殊的服务扩展类,仅仅使用CommonService就足够了。于是在往常的应用中,我们会在spring的配置文件中做如下配置:

<bean id="userService" class="net.lingdot.metawork.core.service.CommonService"/>
<bean id="bookService" class="net.lingdot.metawork.core.service.CommonService"/>
<bean id="pictureService" class="net.lingdot.metawork.core.service.CommonService"/>
<bean id="mailService" class="net.lingdot.metawork.core.service.CommonService"/>
<bean id="messageService" class="net.lingdot.metawork.core.service.CommonService"/>

本着偷懒的原则,我们针对这样的重复寻找了另外的处理方式。现在你不必写上面这些配置了。

团队
Group: Lingdot
Allan Zhang (allanz)
guyan6644@163.com
Jonney Xian (jonney)
jonney_82@163.com
刘 洛麒 (llq667)
llq667@gmail.com
孙 海龙 (sunhl)
sunny.hl@163.com
宋颂 (ssong)
ss0070@163.com
张盈盈 (zyy200411)
04281118@bjtu.edu.cn
牛 俊力 (niujl)
05272140@bjtu.edu.cn
胡文锦 (cattyjin)
07122053@bjtu.edu.cn
苏 哲 (billy)
mvpierce34@gmail.com

标签

 
(没有)