龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > JAVA开发 >

Java开源架构Jdon应用系统案例开发

时间:2009-12-23 15:42来源:未知 作者:admin 点击:
分享到:
案例场景:每个系统都是从域建模入手设计,通过建模将业务需求转化为软件域范围的模型,本文以围绕一个模型实现该模型的基本功能:增删改查(CRUD)和批量分页查询,通过Jdon框架的

  案例场景:每个系统都是从域建模入手设计,通过建模将业务需求转化为软件域范围的模型,本文以围绕一个模型实现该模型的基本功能:增删改查(CRUD)和批量分页查询,通过Jdon框架的迅速简化高质量的开发,建立一个复杂系统的基础部分,使得开发者将真正精力集中在每个项目系统的非凡业务处理。
  
  源码见Jdon框架源码包中的Jdonsample项目。
  
  案例需求:简单的留言簿,实现留言Message模型的新增、修改、删除和批量查询。
  
  增删改查(CRUD)和批量分页查询是每个系统的基本功能,下面分这两部分描述。
  
  CRUD开发步骤
  
  说明:每个应用系统中存在大量重复的CRUD开发流程,通过本框架可快速完成这些基本基础工作量,将精力集中在非凡功能设计上。
  CRUD快速开发主要简化了表现层的流程,将其固化,或者是模板化,以配置替代代码编制,灵活而快速。每个Model一套固化CRUD流程。
  开发步骤分两个小部分:代码编写和配置。
  
  代码:三步代码编写
  
  代码只需要三步:
  
  第一步:域建模:建立sample.model.Message,如下:
  
   public class Message extends Model {
   private Long messageId;
   private String name;
  
   public String getName() { return name; }
   public void setName(String name) { this.name = name; }
  }
  注重点:
  
  模型类Message必须继续框架的com.jdon.controller.model.Model,或者实现com.jdon.controller.model.ModelIF接口。
  
  该模型类必须有一个能够标识其对象唯一性的主键,如messageId,这个主键相当于数据表的主键。
  
  第二步:建立Model组件服务:首先建立模型Message的服务接口sample.service. MessageService:
  
   public interface MessageService {
   public void createMessage(EventModel em);
   public void updateMessage(EventModel em);
   public void deleteMessage(EventModel em);
   public Message getMessage(String messageId);
  }
  至于MessageService的具体实现子类可以在现在或者以后建立,可见源码包中的sample.service.MessageServiceImp。
  
  第三步:建立Model的表现层边界模型:sample.web.MessageForm,必须继续框架的ModelForm,如下:
  
   public class MessageForm extends ModelForm {
   private String messageId;
   private String name;
   public String getName() { return name; }
   public void setName(String name) { this.name = name; }
  }
  表现层MessageForm内容基本上是从业务层模型Message类中拷贝过来的,主要是为了保持MessageForm和Message的字段一致,我们就可以通过框架内MessageForm和Message的相同字段的复制进行数据传送,将业务层的Message数据传送到表现层MessageForm;或将界面表现层MessageForm传送到Message中。
  
  一个模型Message有关CRUD实现的代码工作到此结束,假如有其他模型,完全按照上述三个步骤再做一次,是不是不太费脑筋?有点模板化开发味道?下面谈谈CRUD实现第二组成部分:配置。
  
  配置分两个配置文件,这两个配置文件分别是:
  
  将前面三步编写的类建立关系:jdonframework.XML
  
  配置界面流程:struts-config.xml

配置之一:Jdon框架配置文件
  
  首先我们将前面三步编写的三个类:模型Message、服务MessageService和界面模型MessageForm建立起联系,也就是告诉Jdon框架这三者是解决一个模型增删改查CRUD功能实现的。
  
  由于这个配置文件是告诉Jdon框架的,因此,我们取名为jdonframework.xml,当然你也可以取其他名称,无论取什么名称,都要告诉Jdon框架,在struts-config.xml中配置
  
   <plug-in className="com.jdon.strutsutil.InitPlugIn">
  <set-property property="modelmapping-config" value="jdonframework.xml" />
  </plug-in>
  jdonframework.xml配置内容如下:
  
   <models>
   <!-- 配置模型的类是Message,其主键是messageId -->
   <model key="messageId" class ="sample.model.Message">
   <!-- 下行是配置界面模型MessageForm -->
  <actionForm name="messageForm"/>
  <handler>
   <!-- 以下配置MessageService -->
   <service ref="messageService">
  <getMethod name="getMessage" />
  <createMethod name="createMessage" />
  <updateMethod name="updateMessage" />
  <deleteMethod name="deleteMessage" />
   </service>
  </handler>
   </model>
  </models>
  <services>
  <!-- 以下配置MessageService -->
  <pojoService name="messageService" class="sample.service.MessageServiceImp"/>
  </services>
  以上配置是配置模型Message、模型服务MessageService和界面模型MessageForm三者关系的,下面具体说明三个部分的配置:
  
  一、模型Message的配置:
  
  这是通过第一行中的class值来指定当前Model是sample.model.Message:
  
  
  
精彩图集

赞助商链接