开发专题指南: 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等
· 基础权限: 用户,角色,菜单权限。button权限,数据权限
· 智能报表集成: 简易的图像报表工具和Excel导入导出
· Web容器測试通过的有Jetty和Tomcat6
· 待推出功能:分布式部署。云计算,移动平台开发,规则引擎,代码生成器(eclipse插件)
· 要求JDK1.6+
1.3. 平台优势
ü 採用主流开源技术框架,easy上手; 代码生成器依赖性低,非常方便的扩展能力,可全然实现二次开发;
ü 开发效率非常高,代码生成器支持多种数据模型:单表数据模型、单表自关联模型和一对多(父子表)数据模型,代码生成功能直接使用;
ü 查询SQL过滤器,后台不须要写代码。页面追加查询字段。查询功能自己主动实现
ü 页面校验自己主动生成(必须输入、数字校验、金额校验、时间控件等);
ü 基础的用户权限:菜单。button权限。角色
ü 经常使用共通封装,各种工具类(定时任务,短信接口,邮件发送,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].基础用户权限
权限功能:用户、角色、权限(菜单权限+button权限)
[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平台过程中出现的疑难问题 )
版权声明:本文博主原创文章,博客,未经同意不得转载。