出场告白:
这是一个通过配置一个javaBean,就能自动生成CRUD页面的程序。(添加页面,列表显示页面,详细信息显示页面)
下载源代码:http://kiral.iteye.com/blog/67902
指南:
1。配置一个javaBean
在类上面配置一个描述类的信息。
在方法上配置描述方法的信息。
javabean详细代码如下:
java 代码
- import org.quick.code.annotation.ClassDescription;
- import org.quick.code.annotation.MethodDescription;
-
- @ClassDescription("用户")
- public class User
- {
- private Integer id;
-
- private String name;
-
- private String password;
-
- private String memo;
-
- public Integer getId()
- {
- return id;
- }
-
- public void setId( Integer id)
- {
- this.id = id;
- }
-
- @MethodDescription("备注")
- public String getMemo()
- {
- return memo;
- }
-
- public void setMemo( String memo)
- {
- this.memo = memo;
- }
-
- @MethodDescription("用户姓名")
- public String getName()
- {
- return name;
- }
-
- public void setName( String name)
- {
- this.name = name;
- }
-
- @MethodDescription("用户密码")
- public String getPassword()
- {
- return password;
- }
-
- public void setPassword( String password)
- {
- this.password = password;
- }
-
- }
2。定制页面模板
页面的模板是使用freemarker描述的。你可能根据自己项目的需要,自由定制这些模板。
编辑页面的默认模板代码如下:
xml 代码
- <%@ page contentType="text/html;charset=UTF-8"%>
- <%@ include file="/commons/taglibs.jsp"%>
- <html>
- <head>
- ${title}信息编辑页面
- head>
- <body>
- <#list fields as field>
- <div id="${field.name}Div">
- <div class="formLabel">
- ${field.description}:
- div>
- ${field.ui}
- div>
- #list>
- body>
- html>
说明:
- ${title}:对应是javabean的类的描述,如:用户。
- ${field.name}对应的是字段的名称,如:name。
- ${field.name}对应的是字段的名称,如:用户姓名。
3。定制页面的编辑控件
页面的编辑控件,是可以按照你项目的需要来定制的。
xml 代码
- <UI>
- <TEXT>
- <!---->]]>
- TEXT>
- <PASSWORD>
- <!---->]]>
- PASSWORD>
- UI>
4。生成代码
执行下列代码,生成的页面,将打印在控制台下。
java 代码
- PageCreator.build("User", "list.ftl","edit.ftl","show.ftl");
5。代码预览
下面是生成的编辑页面的预览:
xml 代码
- <%@ page contentType="text/html;charset=UTF-8"%>
- <%@ include file="/commons/taglibs.jsp"%>
- <html>
- <head>
- 用户信息编辑页面
- head>
- <body>
- <div id="memoDiv">
- <div class="formLabel">
- 备注:
- div>
-
- <input name="model.memo" type="text" value="${model.memo}" maxlength="20" id="memo">input>
-
- div>
- <div id="nameDiv">
- <div class="formLabel">
- 用户姓名:
- div>
-
- <input name="model.name" type="text" value="${model.name}" maxlength="20" id="name">input>
-
- div>
- <div id="passwordDiv">
- <div class="formLabel">
- 用户密码:
- div>
-
- <input name="model.password" type="password" value="${model.password}" maxlength="20" id="password">input>
-
- div>
- body>
- html>
6。小结
可能看了这么多觉得会很复杂,好像需要配置很多东西,其实不然。
根据不同的项目,你的页面表现可能会不一样,所以需要按照2,3中所说的定制页面和编辑控件。
但是针对一个项目只需要定制一次页面和控件,而后只需要配置javabean,就会自动产生编辑,显示,详细信息页面。
其实每次当我去研读别人的指南的时候,也会发晕,有的描述不清楚,有的文字太长,所以我为大家提供了一个开发视频,大家可以先看看,再决定要不要看指南。
- code.rar (813.8 KB)
- 描述: 代码生成程序的演示
- 下载次数: 359
分享到:
- 2007-04-04 18:06
- 浏览 4535
- 评论(2)
- 论坛回复 / 浏览 (2 / 4189)
- 查看更多
相关推荐
1.0 同构 React + Flux 电影数据库示例 完整的应用示例,包括在服务器端使用 koa 进行用户身份验证,以及在前端使用 React/Flux(Alt)。 还使用 koa-mongo-rest 生成 REST API,并使用 restful.js 来使用它们。 使用...
----------------------------...• 优化的图形库 包括定制的 2D 图形库, 3D 图形库基于 OpenGL ES 1.0 (硬件加速可选) • SQLite SQLite SQLite SQLite 用作结构化的数据存储 • 多媒体支持 包括常见的音频、视频和...
在mysql里创建数据库jfinal_demo,运行maven插件 cn.dreampie:flyway-maven-plugin:1.0:clean和cn.dreampie:flyway-maven-plugin:1.0:migrate 生成数据库表结构 2.使用jetty运行项目,运行maven插件jetty:run 3....
在ASP.NET页面中推荐使用覆写(Override)而不是事件处理(Event Handler) 常用编码工具类,支持base64,md5,des,crc32 也谈谈技术面试 在C#里把ArrayList转换为Array 或 把Array转换为ArrayList C# 2.0 在.NET 2.0中...
java收银系统源码PySpark 备忘单 此备忘单将帮助您学习 PySpark 并更快地编写 PySpark 应用程序。 这里的所有内容都是功能齐全的 PySpark 代码,您可以运行或适应您的程序。 这些片段在 CC0 1.0 通用许可证下获得...
内含各种例子(vc下各种控件的使用方法、标题栏与菜单栏、工具栏与状态栏、图标与光标、程序窗口、程序控制、进程与线程、字符串、文件读写操作、文件与文件夹属性操作、文件与文件夹系统操作、系统控制操作、程序...
内含各种例子(vc下各种控件的使用方法、标题栏与菜单栏、工具栏与状态栏、图标与光标、程序窗口、程序控制、进程与线程、字符串、文件读写操作、文件与文件夹属性操作、文件与文件夹系统操作、系统控制操作、程序...
内含各种例子(vc下各种控件的使用方法、标题栏与菜单栏、工具栏与状态栏、图标与光标、程序窗口、程序控制、进程与线程、字符串、文件读写操作、文件与文件夹属性操作、文件与文件夹系统操作、系统控制操作、程序...
内含各种例子(vc下各种控件的使用方法、标题栏与菜单栏、工具栏与状态栏、图标与光标、程序窗口、程序控制、进程与线程、字符串、文件读写操作、文件与文件夹属性操作、文件与文件夹系统操作、系统控制操作、程序...
内含各种例子(vc下各种控件的使用方法、标题栏与菜单栏、工具栏与状态栏、图标与光标、程序窗口、程序控制、进程与线程、字符串、文件读写操作、文件与文件夹属性操作、文件与文件夹系统操作、系统控制操作、程序...
内含各种例子(vc下各种控件的使用方法、标题栏与菜单栏、工具栏与状态栏、图标与光标、程序窗口、程序控制、进程与线程、字符串、文件读写操作、文件与文件夹属性操作、文件与文件夹系统操作、系统控制操作、程序...
TinyXML以Zlib许可来发布,所以你可以在开源或者商业软件中使用它。许可证更具体的描述在每个源代码文件的顶部可以找到。 TinyXML在保证正确和恰当的XML输出的基础上尝试成为一个灵活的解析器。TinyXML可以在任何...
Kubernetes Secrets Control Plane是一个开源项目,提供了一种将外部机密作为kubernetes资源进行管理的方法。 秘密永远不会真正存储在kubernetes中,而是存储在秘密管理系统中,并通过角色和角色绑定来控制对它们的...
2014年3月(标记v1.0) 第二版: 2014年10月 第三版: 2015年4月 第四版: 2018年3月 第五版: 2018年11月 保持学习 课程 [EN]面向科学家和工程师的Python课程 [这是] [EN] :Python,Linux,SQL,GitHub研讨会(EN...