首页 > 代码库 > 开发指南专题专题一: JEECG微云快速开发平台前言
开发指南专题专题一: JEECG微云快速开发平台前言
JEECG微云快速开发平台-前言
1. 前言
1.1. 技术背景
随着WEB UI 框架(EasyUI/Jquery UI/Ext/DWZ)等的逐渐成熟,系统界面逐渐实现统一化,代码生成器也可以生成统一规范的界面!
代码生成+手工MERGE半智能开发将是新的趋势,生成的代码可节省50%工作量,快速提高开发效率!
1.2. 平台介绍
JEECG [J2EE Code Generation] 是一款基于代码生成器的微信快速开发平台,采用代码生成+手工MERGE半智能开发模式, 可以帮助解决Java项目60%的重复工作,让开发更多关注业务逻辑。既能快速提高开发效率,帮助公司节省人力成本,同时又不失扩展性和灵活性。
JEECG宗旨:简单功能由代码生成器生成使用; 复杂业务采用表单自定义,业务流程使用工作流来实现、扩展出任务接口,供开发编写业务逻辑。 实现了流程任务节点和任务接口的灵活配置,既保证了公司流程的保密行,又减少了开发人员的工作量。
JEECG 采用SpringMVC+MiniDao持久层+UI标签组件作为基础架构,采用面向声明的开发模式,基于泛型方式编写极少代码即可实现复杂的数据展示、数据编辑、表单处理等功能,再配合代码生成器的使用将JavaEE的开发效率提高6倍以上,可以将代码减少60%以上。
JEECG V3.0版本四大技术点: 1.代码生成器 2. UI标签组件 3.在线流程设计 4.系统日志记录。
· 代码生成器:支持多种数据模型,根据表生成对应的Entity,Service,Dao,Controller,JSP等,增删改查功能生成直接使用
· UI标签组件:针对WEB UI进行标准封装,页面统一采用UI标签实现功能:数据datagrid,表单校验,Popup,Tab等,实现JSP页面零JS,开发维护非常高效
· 在线流程设计:在线流程定义,采用开源Activiti流程引擎,实现在线画流程,自定义表单,表单挂接,业务流转,流程监控,流程跟踪,流程委托等
· 系统日志记录:系统操作日志详细记录,帮助运维人员进行系统分析和故障排查。
最新版本及特性
· JEECG V3.0,经过了专业压力测试,性能测试,保证后台数据的准确性和页面访问速度
· 支持多种浏览器: IE, 火狐, Google 等浏览器访问速度都很快
· 支持数据库: Mysql,Oracle10g等
· 基础权限: 用户,角色,菜单权限,按钮权限,数据权限
· 智能报表集成: 简易的图像报表工具和Excel导入导出
· Web容器测试通过的有Jetty和Tomcat6
· 待推出功能:分布式部署,云计算,移动平台开发,规则引擎,代码生成器(eclipse插件)
· 要求JDK1.6+
1.3. 平台优势
ü 采用主流开源技术框架,容易上手; 代码生成器依赖性低,很方便的扩展能力,可完全实现二次开发;
ü 开发效率很高,代码生成器支持多种数据模型:单表数据模型、单表自关联模型和一对多(父子表)数据模型,代码生成功能直接使用;
ü 查询SQL过滤器,后台不需要写代码,页面追加查询字段,查询功能自动实现
ü 页面校验自动生成(必须输入、数字校验、金额校验、时间控件等);
ü 基础的用户权限:菜单,按钮权限,角色
ü 常用共通封装,各种工具类(定时任务,短信接口,邮件发送,Excel导出等),基本满足80%项目需求
ü 集成简易报表工具,图像报表和数据导出非常方便,可极其方便的生成pdf、excel、word等报表;
ü 集成工作流引擎Activiti5,并实现了只需在页面配置流程转向,可极大的简化工作流的开发;用Activiti5的流程设计器画出流程走向,一个工作流基本就完成了,只需进行流程的配置或者写很少量的java代码
1.4. 平台架构
架构技术: Spring MVC+Hibernate4+UI快速开发库+Spring JDBC+Highcharts图形报表+Jquery+Ehcache。
设计思想: 零配置( 约定大于配置)
各技术点说明
[1]代码生成器
代码生成器用于生成规范的后台代码+统一风格的前台页面+表单校验。
单表模型,单表自关联模型和一对多(父子表)数据模型,增删改查功能生成直接使用;
特点:
A.前台页面字段对应数据库字段生成;
B. 页面字段校验自动生成(数字类型\必须项\金额类型\时间控件\邮箱\手机号\QQ号等等);
C.支持Oracle/Mysql/Postgres数据库
注意:代码生成包括JSP页面生成,代码无需修改,增删改查功能直接配置使用
[2].查询条件过滤器
页面加查询条件,只需配置页面对应的查询属性,后台不需要写任何逻辑判断,JEECG查询过滤器机制会自动追加查询条件至HQL
[3].UI快速开发库
UI快速开发库,针对WEB UI进行标准封装,页面统一采用UI标签实现功能:数据datagrid、表单校验、Popup、Tab、选择器、自动补全功能等,实现JSP页面零JS,开发维护非常高效
[4].智能工作流
在线流程定义,采用开源Activiti流程引擎,实现在线画流程,自定义表单,表单挂接,业务流转,流程监控,流程跟踪,流程委托等
[5].表单Form校验组件
前台页面字段校验采用Validform表单检验组件,支持手机号码、邮箱帐号、IP地址等常用的数值验证及字长验证
[6].常用共通封装
数据字典/ 邮件发送/ 定时任务/短信接口/Freemarker模板工具/Jquery
[7].基础用户权限
权限功能:用户、角色、权限(菜单权限+按钮权限)
[8].Ehcache缓存机制
Ehcache缓存自定义标签(永久缓存/临时缓存)
[9].报表封装
Excel简易导出工具类+Highcharts图形报表
[10].MiniDao数据持久层
(1) O/R mapping不用设置xml,零配置便于维护
(2) 不需要了解JDBC的知识
(3) SQL语句和java代码的分离
(4) 可以自动生成SQL语句
(5) 接口和实现分离,不用写持久层代码,用户只需写接口,以及某些接口方法对应的sql 它会通过AOP自动生成实现类
(6) 支持自动事务处理和手动事务处理
(7) 支持与hibernate轻量级无缝集成
(8) MiniDao吸收了Hibernate+mybatis的优势,支持实体维护和SQL分离
(9) SQL支持脚本语言
[11].安全的事务回滚机制+安全的数据乐观锁机制
[12].系统日志记录,便于问题追踪
1.5. 技术支持
作者:张代浩
邮箱:jeecg@sina.com
技术论坛:www.jeecg.org
技术支持:JEECG开源社区
说明:提供偿服务(公司培训,技术支持,解决使用JEECG平台过程中出现的疑难问题 )