动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ Java教程 ]的信息

本月文章推荐
.Java实现数据驱动的命令用户界面.
.实现Swing的JTables和Excel间的复.
.关于java的Classpath全解java入门.
.Eclipse快速上手指南(3).
.Java桌面应用程序设计:SWT简介.
.JBUILDER9里WEB服务介绍.
.Struts国际化编程轻松实现.
.教您如何成为 EJB 专家详解系列连.
.谨慎使用Date和Time类.
.自我参考:Java学习的30个目标.
.WebWork的强大的验证器.
.特殊字符.
.Log4j的使用总结!(用于收藏救急.
.Java性能探寻.
.Model View Controller 与 Obser.
.我对类,方法 ,接口的认识.
.关于Servlet及JSP中遇到的多线程.
.Servlet的图象处理技巧.
.在学习编程的过程中,应该注意什.
.要成为Java高手需要注意的25个学.

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

发表日期:2008-1-5 |



  案例场景:每个系统都是从域建模入手设计,通过建模将业务需求转化为软件域范围的模型,本文以围绕一个模型实现该模型的基本功能:增删改查(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:


上一篇:把JBoss缓存用作POJO缓存的实战演练 人气:560
下一篇:Java设计模式之迭代器模式 人气:369
浏览全部Java的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-9-4 LPLY CMS 网站管理系统 v5.0
2008-9-4 缤纷互动视频交友 v3.01.902
2008-9-4 ADN视频收藏专家 v3.0 bulid 080
2008-9-4 天空网络电影系统SKYUC v2.5.6 简
2008-9-4 Web Wiz Rich Text Editor(文本编
2008-9-4 幻影动漫网视频系统(Ppdong) v1.
2008-9-4 乐维电脑在线DIY配置系统
2008-9-4 老樊文章管理系统SQL版
2008-9-4 ASP.NET 2.53 缩略图水印组件源码
2008-8-23 Mini WinMount V0.4
2008-8-23 Vista优化大师3.11正式版
2008-8-23 Wine 1.13
2008-8-23 KlipFolio 5.0 Build 5899-80
2008-8-23 Windows Sysinternals Desktops
2008-8-23 OneTap Movies1.2破解版
2008-8-23 AnnotaterPDF阅读1.1.503 破解版
2008-8-23 SoundMeter分贝测量仪 v1.0汉化破
2008-8-23 iDrum音乐节拍1.0破解版
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | 广告代码 | Html转换js | js/vbs加密 | md5加密 | 进制转换
实用工具:汉字翻译拼音 | 符号对照表 | 个税计算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 国家代码与域名缩写 | 文字加密解密 | 健康查询 | 万年历 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵