使用rapid-framework自动生成struct2
在JavaWeb的开发中,对数据对象的操作不外乎增删改查,不同的数据对象,其action、service、model、jsp等都比较类似,如果手动去写这些代码,工作量大且非常繁琐。一个心高气傲的程序员如果被安排去做干这种活,无论多么有耐心,也会在无休止的琐碎代码中逐渐晕菜。如果有代码工具帮助我们生成这些代码,让coder真正去关注业务逻辑的开发,那肯定是极好的了。
在网上搜索了一下,这种代码自动生成的脚手架scaffold(不是Scofield,scofield是越狱的小帅)有两种,一种是Rails,可以参考 http://www.ibm.com/developerworks/cn/web/1204_zhanzy_dojograils/ 学习一下;另一种就是本文要介绍的rapid-framework,该项目的网址在http://code.google.com/p/rapid-framework(别点了,咱们这嘎达打不开),下面是该项目的介绍:
"一个类似ruby on rails的java web快速开发脚手架,本着不重复发明轮子的原则,框架只是将零散的struts(struts2)+spring+hibernate各个组件组装好在一起,并对struts及struts2进行改造,提供零配置编程,并内置一个强大的代码生成器及模板文件,可以生成java的hibernat model,dao,manager,struts+struts2 action类,可以生成jsp的增删改查及列表页面。项目借鉴了ruby on rails,appfuse,springside."
目标还是很完美的,但是据我实践,发现使用起来还有点小困难,同志还需努力哦!
(1)首先,不管用什么办法,你得把rapid-framework下载下来。比方说我下载下载下来的压缩包,名字叫做rapid-framework-3.9.3.20100923.zip,从起名看,这个包是2010年9月份开发的,现在是2015年,整整5年过去了,没有一点更新,由此可以推测这个项目进展的并不顺利。
(2)rapid-framework-3.9.3.20100923.zip解压缩,解压出来两个文件夹,rapid-framework-3.9.3.20100923就是我们待会要使用的工程,reference_doc目录为说明文档,我们只要按照说明文档的quick_start_guild.html,一步一步操作即可,该知道说明是中文的,e文不好的同学不要担心。
(3)我这里把该指导文档的标题拷贝在这里(详细信息你下载quick_start_guild.html文件自己瞅瞅):
1.创建一个 struts2_demo的 web project
2.拷贝rapid-framework至项目根目录
3.设置项目的编码为utf-8
4.设置源码路径
5.将generator/lib的jars加入classpath
6.安装插件 hibernate及struts2

7.在mysql数据库中创建表user_info
8.修改生成器配置文件generator.xml的jdbc数据库连接信息
9.运行代码生成器 GeneratorMain.java
10.拷贝生成的代码至项目根目录,并刷新项目(现在就可以使用新生成的代码了)
这是一张成果图:

另外,如果你是maven用户,现在可以直接在maven官方仓库中引用到rapid的类库,我还不知道引入这些类有什么用,总之先记在这里吧。
<!-- rapid核心框架 -->
<dependency>
<groupId>com.googlecode.rapid-framework</groupId>
<artifactId>rapid-core</artifactId>
<version>4.0</version>
</dependency>
rapid-generator
<!-- 代码生成器核心引擎 -->
<dependency>
<groupId>com.googlecode.rapid-framework</groupId>
<artifactId>rapid-generator</artifactId>
<version>4.0</version>
</dependency> <!-- 代码生成器扩展包 -->
<dependency>
<groupId>com.googlecode.rapid-framework</groupId>
<artifactId>rapid-generator-ext</artifactId>
<version>4.0</version>
</dependency> <!-- 代码生成器模板,模板根目录通过 classpath:generator/template/rapid 可以引用 -->
<dependency>
<groupId>com.googlecode.rapid-framework</groupId>
<artifactId>rapid-generator-template</artifactId>
<version>4.0</version>
</dependency>
使用rapid-framework自动生成struct2的更多相关文章
- [Django REST framework - 自动生成接口文档、分页]
[Django REST framework - 自动生成接口文档.分页] 自动生成接口文档 # 后端人员写好接口,编写接口文档,给前端人员看,前端人员依照接口文档开发 # 公司里主流 -后端,使用w ...
- Entity Framework 自动生成CodeFirst代码
前言 在前面的文章中我们提到Entity Framework的“Code First”模式也同样可以基于现有数据库进行开发.今天就让我们一起看一下使用Entity Framework Power To ...
- MetadataType来帮助entity framework自动生成的代码进行标注
真的是,用的时候就四处google,还是记在这里容易找 [MetadataType(typeof(Person.Metadata))] public partial class Person { pr ...
- Entity Framework 自动生成代码 如何用继承
分部类 用接口
- django自动生成接口文档
我们在实际项目中,会需要将我们的一些接口的信息返回给前端,便于前后端的交互,在实际使用中,这种自动生成接口文档的模块很多,我主要是用REST framework自动生成接口文档,这个需要用到的是cor ...
- 9.1.3 .net framework通过业务逻辑层自动生成WebApi的做法
首先需要说明的是这是.net framework的一个组件,而不是针对.net core的.目前工作比较忙,因此.net core的转换正在编写过程中,有了实现会第一时间贴出来. 接下来进入正题.对于 ...
- Entity Framework Code First 遭遇主键自动生成问题
4.0后就没有去跟踪后面的版本了.现在直接开始用5.0没想到在做User的GURD时就遭遇insert不进数据问题. ISet<User>.Add(user);_context.SaveC ...
- Django restful framework中自动生成API文档
自动生成api文档(不管是函数视图还是类视图都能显示) 1.安装rest_framework_swagger库 pip install django-rest-swagger 2.在项目下的 urls ...
- 【转】Django restful framework中自动生成API文档
转自 https://www.cnblogs.com/sui776265233/p/11350434.html 自动生成api文档(不管是函数视图还是类视图都能显示) 1.安装rest_framewo ...
随机推荐
- SQL Server压缩日志及数据库文件大小
请按步骤进行,未进行前面的步骤时,请不要做后面的步骤,以免损坏你的数据库. 一般不建议做第4,6两步,第4步不安全,有可能损坏数据库或丢失数据.第6步如果日志达到上限,则以后的数据库处理会失败,在清理 ...
- 忘记redhat linux root密码怎么办
自己VM虚拟机里安装redhat linux root密码忘了,刚开始想重新安装,但是后来想到还有linux有一个single模式,使用single可以直接进入字符界面,然后修改: 启动vm虚拟机,启 ...
- 如何制作按钮hover状态
1.选中文字加背景图层 2.Ctrl+J复制图层,向下轻移. 3.点击所复制图层的背景图层,右键选中——混合选项 弹出图层样式框: 4.选择渐变叠加,将渐变——反向勾选上,确定: 5.完成,效果如图.
- MySQL中的WITH ROLLUP
MySQL中的WITH ROLLUP MySQL的扩展SQL中有一个非常有意思的应用WITH ROLLUP,在分组的统计数据的基础上再进行相同的统计(SUM,AVG,COUNT…),非常类似于Orac ...
- 小白日记37:kali渗透测试之Web渗透-手动漏洞挖掘(三)-目录遍历、文件包含
手动漏洞挖掘 漏洞类型 #Directory traversal 目录遍历[本台机器操作系统上文件进行读取] 使用者可以通过浏览器/URL地址或者参数变量内容,可以读取web根目录[默认为:/var/ ...
- XML 格式转JSON 格式
#import <Foundation/Foundation.h> #pragma GCC diagnostic push #pragma GCC diagnostic ignored & ...
- Lua垃圾收集
Lua使用基于被内置在Lua某些算法的垃圾收集自动内存管理.可以自动内存管理的结果,作为一个开发者: 没有必要担心的对象分配内存. 无需释放他们时,不再需要可将其设置为nil. Lua使用运行不时收集 ...
- obj 转为Json 时间格式自定义
var tb = evnWarningBll.GatWarning(); var timeFormat = new IsoDateTimeConverter(); ...
- [改善Java代码]推荐使用String直接量赋值
建议52:推荐使用String直接量赋值 一.建议 String对象的生成方式有两种: 1.通过new关键字生成,String str3 = new String(“中国”); 2.直接声明,如:St ...
- 【模拟】UVa 12108 - Extraordinarily Tired Students
When a student is too tired, he can't help sleeping in class, even if his favorite teacher is right ...