参考:https://blog.csdn.net/u013474104/article/details/78547017

web项目脚手架

rapid-framework是一个以spring为核心的项目脚手架(或者称为胶水框架),框架将各个零散的框架(struts,strust2,springmvc,hibernate,ibatis,spring_jdbc,flex)搭建好,并内置一个代码生成器,辅助项目开发,可以生成java的hibernat model,dao,manager,struts+struts2 action类,可以生成jsp的增删改查及列表页面

项目定位

本框架是类似appfuse,springside的框架,但定位与springside及appfuse不同,它们更像是一些代码的最佳实践,而rapid-framework则是应用于实际项目开发的脚手架, 并且代码也将优化至极致.使用脚手架3分钟即可以搭建出一个实际项目.

框架概览

Dao: spring_jdbc, hibernate, ibatis2, ibatis3, 可以切换dao组件

Dao Helper: 基于dialect的分页(ibatis2, ibatis3, jdbc),动态sql构造工具rapid-xsqlbuilder

Web MVC: struts1, struts2, springmvc, springmvc_rest, 可以切换web组件

Template: (velocity, freemarker, jsp)的模板可以相互继承, velocity及freemarker可以实现模板之间的管道操作

分页组件: extremeTable, rapid-simpletable

UI: rapid-validation表单验证, My97DatePicker日期控件

单元测试: spring test+DBunit

底层支撑: 插件体系及代码生成器(rapid-generator)

项目质量

- 完整的单元测试及持续集成,保证代码质量

Maven

如果你是maven用户,现在可以直接在maven官方仓库中引用到rapid的类库

com.googlecode.rapid-frameworkrapid-core4.0

rapid-generator ``` com.googlecode.rapid-framework rapid-generator 4.0

com.googlecode.rapid-framework rapid-generator-ext 4.0

com.googlecode.rapid-framework rapid-generator-template 4.0

1

2

3

4

5

6

7

“`

下载

下载这里,有不的版本和许多使用demo

使用

或者下载版本后,里面也会自带一个该版本的文档

rapid-framework-3.9.3.20100923\reference_doc

rapid-framework的主要文件目录:

待续…

其它

不折腾了,我已经有现成的了,都已经配置好

直接关联数据库表生成代码模板

变量引用

file:///C:/Users/aaron/Desktop/11/rapid-framework-3.9.3.20100923/reference_doc/rapid_generator.html

generateByClass()gg控制变量

rapid_generator_gg

One-sentence summary of this page.

生成器模板 GG 控制变量

gg变量可以让每一个模板自己控制一些事情,如输出目录,输出encoding,或者还可以通过gg变量生成其它文件.

示例使用

${gg.setIgnoreOutput(true)}

相关控制方法,示例使用:${gg.setIgnoreOutput(true)}

boolean ignoreOutput : 不生成输出文件

String outputFile :

String outputFiles : 同时生成几份拷贝在在几个地方

String sourceEncoding : 指定模板文件的编码

String outputEncoding : 控制模板生成的文件编码

boolean isOverride : 是否覆盖目标文件,如果存在,默认true

String outRoot : 设置输出文件的根目录

相关只读属性,示例使用:${gg.getSourceDir()}

String sourceFile; 模板源文件file

String sourceDir; 模板源文件所在的目录

String sourceFileName; 模板源文件名

生成其它文件

${gg.generateFile(outputFile,content,encoding)}

装载其它资源

${gg.loadXml(xmlFile,ignoreError)}

得到property配置

${gg.getProperty(key,defaultValue)}: 得到proproty,如果没有找到,则返回默认值

${gg.getInputProperty(key,message)}: 会弹出一个输入框,提示用户输入值,提示消息为message.

${gg.getInputProperty(key)}: 会弹出一个输入框,提示用户输入值,提示消息为please input value for key.

Table.java 参考, rapid_generator_table_model_ref

Table.java 参考,引用变量名为:table

Table对象为对应的数据库表:

属性描述示例值

sqlName

数据库的列名称,很多其它值都是通过此列派生

USER_INFO

className

通过sqlName生成的类名称

UserInfo

classNameFirstLower

类名称第一个字母小写

userInfo

classNameLowerCase

className并全部小写

userinfo

underscoreName

下划线类名称

user_info

columns

数据库全部column

请查阅Column.java

remarks

数据库的注释

null

notPkColumns

非主键的column对象

pkCount

主键数

1

singleId

pkCount = 1时为true

true

compositeId

pkCount >= 2时为true

false

idColumn

表的主键

USER_ID(已经废弃)

pkColumns

所有的主键列,column对象

compositeIdColumns

等价于pkColumns,该属性已经过时

tableAlias

表的别名,值为 remarks == null ? className : remarks

UserInfo

notCompositeId

pkCount < 2 时为true

true

primaryKeyColumns

所有主键列

ownerSynonymName

constantName

常量名,等于sqlName.toUpperCase()

USER_INFO

importedKeys

exportedKeys

Column.java 参考

Column为数据库表(table)对应的列:

属性描述示例值

sqlName

数据库原生列名

USER_ID

sqlTypeName

数据库原生列类型

BIGINT

sqlType

数据库原生列类型

-5

defaultValue

数据库原生默认值

null

remarks

数据库原生番注

用户ID

columnName

将sqlName删除下划线,并首字母大写

UserId

underscoreName

下划列名称

user_id

columnNameLower

已经过时,使用columNameFirstLower替代

userId

columnNameFirstLower

columnName的第一个字母小写

userId

columnNameLowerCase

等于columnName.toLowerCase()

userid

columnAlias

列的别名,值为 remarks == null ? columnName: remarks

userId

constantName

常量名称,等于sqlName.toUpperCase()

USER_ID

validateString

用于rapid-validation的验证表达式

required validate-integer

noRequiredValidateString

用于rapid-validation的验证表达式

validate-integer

decimalDigits

0

indexed

是否索引列

true

nullable

是否允许为空

false

unique

是否唯一

true

fk

是否外键

false

pk

是否主键

true

isNumberColumn

是否是number类型的列

true

isStringColumn

是否是String类型的列

false

isDateTimeColumn

是否是日期类型的列

false

isNotIdOrVersionField

不是主键并且不等于version时为true

false

htmlHidden

是否需要html隐藏

true

jdbcSqlTypeName

数据库列类型

BIGINT

testData

该列生成的测试数据

173

size

64

javaType

与列相对应的java类型

java.lang.Long

asType

与列相对应的ActionScript类型

Number

table

列相对应的table对象

模板引擎freemarker

模板语言参考

java rapid_JAVA编码(64)—— 代码生成工具(rapid-framework)相关推荐

  1. Java(35):Java Base64编码和解码工具类

    Java Base64编码和解码工具类 Base64Util工具类: package com.ciphergateway.utils; import java.io.UnsupportedEncodi ...

  2. java 文件编码转码工具类

    java 文件编码转码工具类 一.描述        文件编码转码,GBK编码的文件转为UTF-8编码的文件. 二.代码实现 package com.lanshen.utils.lsjavaUtils ...

  3. 【转载】Java文件编码自动转换工具类

    本篇随笔主要介绍了一个用java语言写的将一个文件编码转换为另一个编码并不改变文件内容的工具类: 通过读取源文件内容,用URLEncoding重新编码解码的方式实现. 1 public class C ...

  4. java代码中 作用_Java利用开发中代码生成工具的作用

    Java利用开发中代码生成工具的作用 2010-6-5文字大小:大中小 近来,随着各种代码生成工具的不断涌现(如SpringSource的Spring Roo.Skyway Builder Commu ...

  5. 分享万能java字符串编码转换工具类

    代码下载地址:http://www.zuidaima.com/share/1795356301560832.htm 原文:分享万能java字符串编码转换工具类 package com.zuidaima ...

  6. java ssh2工具,SSH2代码生成工SSH2代码生成工具 PowerBy 清如许UnicodePowerBy

    SSH2代码生成工SSH2代码生成工具 PowerBy 清如许UnicodePowerBy SSH2代码生成工具 PowerBy 清如许Unicode 超值只卖2000元的SSH代码生成工具,快来购买 ...

  7. java万能编码转换_分享万能java字符串编码转换工具类

    package com.zuidaima.util; import java.io.UnsupportedEncodingException; /** * 转换字符串的编码 */ public cla ...

  8. 常用代码生成工具汇总(转)

    1.1 CodeSmith 一款人气很旺国外的基于模板的dotnet代码生成器 官方网站:http://www.codesmithtools.com 官方论坛:http://forum.codesmi ...

  9. 如何提高程序员人效?代码生成工具/框架

    image.png 最近事情太多,很久没有更新简书,突然想起如何提高程序员人效这个问题,就推荐一篇代码生成工具/框架的文章. http://www.cnblogs.com/skyme/archive/ ...

最新文章

  1. 【Linux 内核】实时调度类 ⑥ ( 实时调度类核心函数源码分析 | 插入进程到执行队列 | 从执行队列中选择优先级最高的进程 )
  2. C语言函数题-两对儿参数的交换
  3. 201512-5 矩阵
  4. 电脑出货量_Q3季度全球笔记本电脑出货量增长34%,惠普出货量首次超过联想
  5. C# WinForm关闭窗体确认
  6. 网站暴库原理与方法剖析
  7. 部署Hadoop集群
  8. ActivityGroup简介
  9. 拼音转换成汉字html,汉字转换成拼音的种(转)
  10. costmap代价地图学习
  11. 一只蒟蒻的树形DP学习笔记
  12. mysql端口establish_establish_connection使用方法
  13. 【kali】34 WEB渗透——扫描工具w3af_console
  14. SHON WEBB:真正的自律,就是将这两件事做到极致
  15. 浙大翁恺pat练习题_PAT|中国大学MOOC-浙江大学翁恺-C语言程序设计习题集(更新中)...
  16. 【用户价值分析 RFM模型】用户价值分析
  17. 超写实虚拟人制作教程
  18. 车联网-App车况展示数据设计思路
  19. 【致远FAQ】Guest 账号同时多人登陆导致OA卡顿
  20. 《学术研究,你的成功之道》

热门文章

  1. 【超低功耗智能门锁】Si522A/Si523/Si512--具有超低功耗自动载波侦测功能(ACD功能)的13.56MHz芯片,智能屏蔽触摸功能
  2. DELPHI 三层显示error loading midas.dll
  3. DL4J实战之二:鸢尾花分类
  4. 基于集成运放心电放大器设计(原创)
  5. 安装和使用 Python
  6. Macbook上Gitlab下载代码
  7. CVPR 2020丨图像超清化+老照片修复技术,拯救你所有的模糊、破损照片
  8. eXtremeDB内存数据库7.0新版本的强大功能加强了它在物联网的关键作用
  9. [原创]基于proteus仿真16*64点阵屏带DS1302实钟芯片
  10. centos usb转网口_Linux系统入门学习:在CentOS7上改变网络接口名