`
fyjjack
  • 浏览: 33745 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

代码生成器EST-BPM

    博客分类:
  • java
阅读更多

一、代码加速器的介绍

      代码加速器是基于Velocity模板,Ant执行脚本,结合项目的开发,可以大大减少开发人员的工作量,把重复的程序配置、通用的功能(CRUD)管理等代码一起生成出来。开发用户仅需要设计好相关的表,配置好生成代码的参数,执行Ant的脚本命令则可。基于此,开发人员可以从重复繁杂的编码工作中解放出来,专注于程序的业务实现。目前代码加速器的模板是基于J.Office的开发平台上的,开发用户也可以根据自己的需要,修改模板,添加模板或删除模板等。


二、使用说明

 

   1. 在项目中引入代码加速器

    把代码加速器的全部代码放置在开发目录下,如可以放置在metadata目录下,如下图所示:

  
 

  设置好目录后,需要指定代码生成的根目录,即我们需要把代码生成到该目录的上两级目录,在这里,我们需要进入代码加速器的配置。

2. 生成代码步骤

 

代码加速器的目录结构如下所示


  oa 代码生成器
目录结构文件说明
    conf目录
       代码加速器的配置目录
    lib目录
       代码加速器的依赖包
    templates目录

    为代码生成的模板目录,其下的common目录为通用的应用程序模板,在开发JEE程序时,我们都会有相应的实体类,服务类,数据访问类等,而视图层可以采用多种技术,如Spring MVC,Struts,所以其下的另外两个目录为SpringMVC,Struts视图的模板。

    build.xml
      为代码生成器的脚本命令配置
   specifiedTables
     用于指定生成代码的表

生产代码设置步骤
1. 设置代码产生的目录
    修改conf/generator.properties下的javaOutputLocation参数,使其设置为以下值:
    javaOutputLocation=../../
    在此也可以写成开发环境的项目的绝对路径,如:D:/workspace/joffice/
2. 设置数据库连接
修改conf/generator.properties下的以下参数,并设置正确,如:
# [All Databases]
dbUserid=root
dbPasswd=000
dbSchema=joffice

jdbcDriver=com.mysql.jdbc.Driver
dbUrl=jdbc:mysql://localhost/joffice

【注】在Oracle的环境下,需要特别注意,由于在oracle下,其默认字段是不区分大小写的,因而这对生成的代码并不好,如某实体的属性字段均为大写会给代码带来一些问题。所以可以建多一个Oracle库用于生成代码,并设置其区分大小写字段。这样还不与其维护多一个mysql的库,用于生成代码更为方便些,两个库的不同脚本可以通过powerdesign工具可以比较方便进行转化。

3. 设置实体所在包
    修改conf/PackageNames.properties,加上类似以下代码,告诉生成器把代码生成至哪一个目录包下(左为表名,右为包名):
    duty=personal
errands_register=personal
msg_info=system
msg_type=system
4. 指定生成代码对应的表
    在specifiedTables指定生成的表名,如以下则代表同时生成这两个表
    msg_info
msg_type
5. 执行Ant的命令
在eclipse中的Ant视图中,把codegen/build.xml加进去,执行其缺省的任务(generate)

 

【说明】

 


以上步骤1、2仅需要设置一次,其后产生其他表时,则直接设置步骤3、4则可。
生成的文件及路径由conf/ CommonTemplates.properties及conf/FileLoaction.properties两个文件来设置指定的,开发用户若需要生成其他文件,也可以在这两个文件中进行指定。

 

三、生成代码内容

 

如我们为以下表生成管理界面,

表news_info则对应生成的文件内容有:

 


1.    实体类: NewsInfo.java
2.    映射文件: News Info.hbm.xml
3.    Dao接口及实现类:
NewsInfoDao.java
NewsInfoDaoImpl.java
4.    Service接口及实现类 :NewsInfoService.java

NewsInfoServiceImpl.java

5. Action类

        NewsInfoAction.java


6.    测试类:
NewsInfoDaoTestCase.java
7.    配置文件:
app-service.xml
app-dao.xml
app-action.xml
8.   
Ext js
NewsInfoView.js
NewsInfoForm.js

 

生成的最终界面如下所示:

 

 

 

 

分享到:
评论

相关推荐

    宏天软件J2EE应用快速开发平台技术简介

    2. **极速开发体验**:基于EST-BPM平台,超过80%的模块开发无需编码,利用模板化的代码生成器,快速生成底层代码、业务逻辑代码及Web页面,加速复杂应用系统如CRM、ERP、OA、HR、MIS的高质量开发。 3. **灵活的工作...

    东信EST-100GS身份证阅读器谷歌火狐Chrome Firefox网页浏览器控件下载

    本方案用于规范东信EST系列身份证阅读器谷歌Chrome火狐Firefox插件,支持的型号有:EST-100、EST-100GS、EST-100U、EST-200G、EST-J13X、EST-100G等。 本方案无缝支持最新版本谷歌Chrome火狐Firefox等网页浏览器,...

    浆果类果树EST-SSR标记的开发及应用

    浆果类果树EST-SSR标记的开发及应用,耿金曼,刘禹姗,随着表达序列标签(Expressed Sequence Tags, ESTs)信息的涌现,使得EST-SSR技术(Expressed Sequence Tag-Simple Sequence Repeat, EST-SSR)成为一项新型分子...

    东信EST-100 Java demo 20190814.zip

    【东信EST-100 Java Demo 20190814】是一个与Java编程相关的项目示例,可能是由东信公司开发或提供的。这个压缩包包含了2019年8月14日时该Java项目的演示代码或者实例。在IT行业中,Java是一种广泛使用的、面向对象...

    打印序号4第一部分EST-CEMS-1000用户手册.pdf

    EST-CEMS-1000型固定污染源排放烟气连续监测系统是一款专门用于监控工业排放烟气中污染物浓度的高精度设备。该系统严格遵循一系列国家和行业标准,如GB16297-1996《大气污染物综合排放标准》、HJ/T76-2007《固定污染...

    EST-100身份证读卡器sdk开发包-20200514-arm-arago-linux-gnueabi.tar

    EST-100身份证读卡器sdk开发包,arm-arago-linux-gnueabi 编译链,ARM32位linux开发包源码,采用C语言开发。

    东信EST-100G 谷歌Chrome浏览器插件(20180810).zip

    【东信EST-100G 谷歌Chrome浏览器插件】是一款专为谷歌Chrome浏览器设计的扩展程序,旨在提升用户的浏览体验和工作效率。在2018年8月10日发布的这个版本中,它可能包含了最新的功能更新和性能优化。作为一个专业的IT...

    爱德华消防主机编程软件及说明书4.01(EST-3 系列).zip

    【爱德华消防主机编程软件】是用于EST-3系列消防报警系统的一种专业软件工具,它使得用户能够对消防主机进行详细的配置、编程以及故障排查。EST-3系列是爱德华公司推出的一款先进且可靠的火灾报警控制系统,广泛应用...

    橡胶树EST-SSR标记的开发与应用[借鉴].pdf

    "橡胶树EST-SSR标记的开发与应用" 橡胶树EST-SSR标记的开发与应用是橡胶树分子遗传研究的重要方向。在本研究中,authors 利用EST序列拼接技术,对橡胶树EST序列进行拼接,获得了3090条Unigene。从中发现了430个EST-...

    est-sfs:估计展开的站点频谱和祖先状态-开源

    est-sfs 使用最大似然方法来推断未折叠位点频谱 (uSFS) 和 DNA 序列数据的祖先状态概率。 uSFS 是对来自群体的基因拷贝样本中具有 x 衍生等位基因拷贝的核苷酸位点计数的载体。 est-sfs 使用来自多达三个外群物种的...

    Android东信EST-100示例USB(AS版本20200424增加非接银行卡).zip

    Android东信EST-100示例USB(AS版本20200424增加非接银行卡),2、多功能设计:符合ISO/IEC 14443 Type A/B、ISO/IEC 15693、ISO/IEC 7816 1/2/3 等标准,支持身份证信息读取、IC卡、CPU卡、M1卡、电子标签等多种...

    channel-est-code

    标题“channel-est-code”和描述中的关键词暗示了这是一个关于信道估计的代码集合,可能用于无线通信领域的仿真。在无线通信系统中,信道估计是至关重要的,因为无线信号在传播过程中会受到各种因素的影响,如多径...

    EST-SNP开发软件特性分析及比较知识.pdf

    《EST-SNP开发软件特性分析及比较》这篇文献主要探讨了在生物信息学领域中,如何利用软件来分析和开发表达序列标签(EST)序列中的单核苷酸多态性(SNP)。SNP是基因组内DNA特定位置上的变异,是重要的遗传标记,...

    汇川-EST-IMM Control Technology Leader.pdf

    汇川-EST-IMM Control Technology Leaderpdf,

    从公共数据库中利用数据挖掘的方法开发15条黄金鲈EST-SSR标记(英文).pdf

    EST-SSR(表达序列标签简单序列重复)标记是一种基于表达序列标签(Expressed Sequence Tag,EST)数据库发现的SSR标记。 本研究的目的是利用数据挖掘的方法,从公开的EST数据库中筛选出含有微卫星序列的EST,并...

    汇川-EST-注塑机控制技术的领航者-V0.0.pdf

    汇川-EST-注塑机控制技术的领航者-V0.0pdf,

    Genetic Structure of Paecilomyces militaris by EST-SSR

    基于EST-SSR蛹草拟青霉遗传结构分析,袁峰,虞泓,本研究利用蛹草拟青霉的ESTs数据库中的EST序列,开发了微卫星位点引物,并建立了拟青霉属Paecilomyces的EST-SSR分子标记。开发的引物对蝙�

Global site tag (gtag.js) - Google Analytics