2023年6月21日发(作者:)
Jeecg框架介绍
1 JEECG 宗旨
简单功能由代码生成器生成使用; 复杂业务采用表单自定义,业务流程使
用工作流来实现、扩展出任务接口,供开发编写业务逻辑。 实现了流程任务节点和任务接口的灵活配置,既保证了公司流程的保密行,又减少了开发人员的工作量。
2 JEECG 基础架构
JEECG采用SpringMVC+Hibernate4+UI快速开发库+Spring
JDBC+Jquery+Ehcache作为基础架构,采用面向声明的开发模式, 基于泛型方式编写极少代码即可实现复杂的数据展示、 数据编辑、 表单处理等功能,再配合代码生成器的使用将 JavaEE 的开发效率提高6倍以上,可以将代码减少60%以上。
3 JEECG设计思想 :
零配置( 约定大于配置)
4 JEECG平台优势
采用主流开源技术框架,容易上手; 代码生成器依赖性低,很方便的扩展能力,可完全实现二次开发;
开发效率很高,代码生成器支持多种数据模型:单表数据模型、单表自关联模型和一对多(父子表)数据模型,代码生成功能直接使用;
查询 SQL 过滤器,后台不需要写代码,页面追加查询字段,查询功能自动实现;
页面校验自动生成(必须输入、数字校验、金额校验、时间控件等);
基础的用户权限:菜单,按钮权限,角色;
常用共通封装,各种工具类(定时任务,短信接口,邮件发送,Excel 导出等),基本满足 80%项目需求;
集成简易报表工具,图像报表和数据导出非常方便,可极其方便的生成 pdf、
excel、word 等报表;
集成工作流引擎 Activiti5,并实现了只需在页面配置流程转向,可极大的简化工作流的开发;用 Activiti5 的流程设计器画出流程走向,一个工作流基本就完成了,只需进行流程的配置或者写很少量的 java 代码
5 JEECG技术特点
四大技术特点:代码生成器 ;UI标签组件;在线流程设计;系统日志记录。
5.1 代码生成器
支持多种数据模型,根据表生成对应的Entity,Service,Dao,Controller,JSP 等,增删改查功能生成直接使用。
代码生成器特点:
A. 前台页面字段对应数据库字段生成;
B. 页面字段校验 自动生成(数字类型必须项金额类型时间控件邮箱手机号QQ 号等等);
C. 支持 Oracle/Mysql/ Postgres 数据库
5.2 UI标签组件
针对 WEB UI 进行标准封装,页面统一采用 UI 标签实现功能:数据datagrid,表单校验,Popup,Tab 等,实现 JSP 页面零 JS,开发维护非常高效 5.3 表单Form校验组件
前台页面字段校验采用 Validform 表单检验组件,支持手机号码、邮箱帐号、IP 地址等常用的数值验证及字长验证
5.4 常用共通封装
数据字典/ 邮件发送/ 定时任务/短信接口/Freemarker模板工具/Jquery
5.5 基础用户权限
权限功能:用户、角色、权限(菜单权限+按钮权限+简单数据权限)
5.6 Ehcache缓存机制
Ehcache 缓存自定义标签(永久缓存/临时缓存)
5.7 报表封装
Excel 简易导出工具类+JasperReport报表
5.8 MiniDao+Hibernate+SpringJDbc数据持久层
O/R mapping 不用设置 xml,零配置便于维护
不需要了解 JDBC 的知识
SQL 语句和 java 代码的分离
可以自动生成 SQL 语句
接口和实现分离,不用写持久层代码,用户只需写接口,以及某些接口方法对应的sql 它会通过 AOP 自动生成实现类
支持自动事务处理和手动事务处理
支持与 hibernate 轻量级无缝集成
MiniDao 吸收了 Hibernate+mybatis 的优势,支持实体维护和 SQL 分离 SQL 支持脚本语言
5.9 安全的事务回滚机制
安全的数据乐观锁机制
5.10 在线流程设计
在线流程定义,采用开源 Activiti 流程引擎,实现在线画流程,自定义表单,表单挂接,业务流转,流程监控,流程跟踪,流程委托等
5.11 系统日志记录
系统操作日志详细记录,帮助运维人员进行系统分析和故障排查。
6 JEECG注意规则
1. 列表页面,datagrid 的 name属性不允许存在重复的,否则页面显示白板:
2. 表单验证采用Jquery表单验证插件–Validform
3. 时间控件采用my97,不要使用 easyui 的时间控件,因为加载效率慢流程配置表单后,业务申请必须重新创建
4. jsp 代码注释规范,采用隐式注释不能用显式注释,不然标签还是能读到 :
隐式注释:<%-- --%>
显式注释:
5. 表单布局两种风格: .请使用div风格。
6. Oracle数据库建表规范
字段名字大小写有区别,请注意
7. 菜单采用 frame 方式打开方法
8. 页面组件 ID 命名规范
A. dategrid组件name
C. 查询按钮对应的js方法
7 项目编码规范
7.1 项目编码规范
1. 项目编码格式为 UTF-8(包括:java,jsp,css,js)
2. sevice 接口命名:*ServiceI
service 实现命名:*ServiceImpl
entity 命名:*Entity
page页面form命名:*Page
action 命名:*Controller
项目没有 DAO, SQL 写在 Service 层
代码层次目录按照自动生成目录
3. SQL 文件目录和命名规范
(1).所有 SQL 必须大写,不允许用*,全部替换为字段
(2).SQL 文件根目录为:sql 跟接口目录 Service 是一个目录;
例如:srcsunsql,子目录跟 dao 必须保持一致
(3).SQL 文件命名:[dao 名字]_[dao方法名字].sql
4. 数据库表设计规范
(1).主键字段为 id (2).每个字段必须加备注
5. action 中的方法
配置菜单的方法:以 go 开头(其他方法不允许以 go 开头)
触发业务逻辑的方法:以 do 开头
页面跳转的:以 to 开头
6. Entity 和数据库自定命名规范
采用驼峰写法(每个单词首字母大写、其他字母小写的写法)转成中画线写法(所有字母小写,单词与单词之间以中画线隔开)
7.2 详细说明
[1].SQL 层讲解
A. 项目没有 DAO SQL 写在 Service 层,数据库取数和 DB 操作通过 service 层来实现
B.如果使用硬代码SQL,一个方法对应一个 SQL 的话,可以采用框架封装的方式来存储SQL文件
(表示采用命名规范来存储 SQL)
7.3 存储方式:
(1).所有 SQL 必须小写,不允许用*,全部替换为字段
(2).SQL 文件根目录为:srcsunsql,子目录跟 service 必须保持一致
(3).SQL 文件命名:[service 名字]_[方法名字].sql 读取方式:Stringsql =
hodSql(hodUrl());
7.4 举例讲解命名规范
例如:表名:jeecg_sys_demo
第一部分:代码文件命名规则如下:
首先: 表名采用驼峰写法转换为 Java 代码使用单词
jeecg_sys_demo => JeecgSysDemo
[1].control 命名 :
JeecgSysDemoControl
[2].Servlice命名:
JeecgSysDemoServiceI/JeecgSysDemoServiceImpl
[3].JSP 命名:
jeecg_sys_(表单页面)
jeecg_sys_demo_(列表页面)
jeecg_sys_demo_*.jsp(新增表单页面例如:detail)
[4].control 中方法命名:
页面触发业务方法以 do*开头
页面跳转方法以 go*开头
(方法标签注释需和方法名保持一致)
[5].page/entity 字段定义必须是对象类型
int --> Integer
2023年6月21日发(作者:)
Jeecg框架介绍
1 JEECG 宗旨
简单功能由代码生成器生成使用; 复杂业务采用表单自定义,业务流程使
用工作流来实现、扩展出任务接口,供开发编写业务逻辑。 实现了流程任务节点和任务接口的灵活配置,既保证了公司流程的保密行,又减少了开发人员的工作量。
2 JEECG 基础架构
JEECG采用SpringMVC+Hibernate4+UI快速开发库+Spring
JDBC+Jquery+Ehcache作为基础架构,采用面向声明的开发模式, 基于泛型方式编写极少代码即可实现复杂的数据展示、 数据编辑、 表单处理等功能,再配合代码生成器的使用将 JavaEE 的开发效率提高6倍以上,可以将代码减少60%以上。
3 JEECG设计思想 :
零配置( 约定大于配置)
4 JEECG平台优势
采用主流开源技术框架,容易上手; 代码生成器依赖性低,很方便的扩展能力,可完全实现二次开发;
开发效率很高,代码生成器支持多种数据模型:单表数据模型、单表自关联模型和一对多(父子表)数据模型,代码生成功能直接使用;
查询 SQL 过滤器,后台不需要写代码,页面追加查询字段,查询功能自动实现;
页面校验自动生成(必须输入、数字校验、金额校验、时间控件等);
基础的用户权限:菜单,按钮权限,角色;
常用共通封装,各种工具类(定时任务,短信接口,邮件发送,Excel 导出等),基本满足 80%项目需求;
集成简易报表工具,图像报表和数据导出非常方便,可极其方便的生成 pdf、
excel、word 等报表;
集成工作流引擎 Activiti5,并实现了只需在页面配置流程转向,可极大的简化工作流的开发;用 Activiti5 的流程设计器画出流程走向,一个工作流基本就完成了,只需进行流程的配置或者写很少量的 java 代码
5 JEECG技术特点
四大技术特点:代码生成器 ;UI标签组件;在线流程设计;系统日志记录。
5.1 代码生成器
支持多种数据模型,根据表生成对应的Entity,Service,Dao,Controller,JSP 等,增删改查功能生成直接使用。
代码生成器特点:
A. 前台页面字段对应数据库字段生成;
B. 页面字段校验 自动生成(数字类型必须项金额类型时间控件邮箱手机号QQ 号等等);
C. 支持 Oracle/Mysql/ Postgres 数据库
5.2 UI标签组件
针对 WEB UI 进行标准封装,页面统一采用 UI 标签实现功能:数据datagrid,表单校验,Popup,Tab 等,实现 JSP 页面零 JS,开发维护非常高效 5.3 表单Form校验组件
前台页面字段校验采用 Validform 表单检验组件,支持手机号码、邮箱帐号、IP 地址等常用的数值验证及字长验证
5.4 常用共通封装
数据字典/ 邮件发送/ 定时任务/短信接口/Freemarker模板工具/Jquery
5.5 基础用户权限
权限功能:用户、角色、权限(菜单权限+按钮权限+简单数据权限)
5.6 Ehcache缓存机制
Ehcache 缓存自定义标签(永久缓存/临时缓存)
5.7 报表封装
Excel 简易导出工具类+JasperReport报表
5.8 MiniDao+Hibernate+SpringJDbc数据持久层
O/R mapping 不用设置 xml,零配置便于维护
不需要了解 JDBC 的知识
SQL 语句和 java 代码的分离
可以自动生成 SQL 语句
接口和实现分离,不用写持久层代码,用户只需写接口,以及某些接口方法对应的sql 它会通过 AOP 自动生成实现类
支持自动事务处理和手动事务处理
支持与 hibernate 轻量级无缝集成
MiniDao 吸收了 Hibernate+mybatis 的优势,支持实体维护和 SQL 分离 SQL 支持脚本语言
5.9 安全的事务回滚机制
安全的数据乐观锁机制
5.10 在线流程设计
在线流程定义,采用开源 Activiti 流程引擎,实现在线画流程,自定义表单,表单挂接,业务流转,流程监控,流程跟踪,流程委托等
5.11 系统日志记录
系统操作日志详细记录,帮助运维人员进行系统分析和故障排查。
6 JEECG注意规则
1. 列表页面,datagrid 的 name属性不允许存在重复的,否则页面显示白板:
2. 表单验证采用Jquery表单验证插件–Validform
3. 时间控件采用my97,不要使用 easyui 的时间控件,因为加载效率慢流程配置表单后,业务申请必须重新创建
4. jsp 代码注释规范,采用隐式注释不能用显式注释,不然标签还是能读到 :
隐式注释:<%-- --%>
显式注释:
5. 表单布局两种风格: .请使用div风格。
6. Oracle数据库建表规范
字段名字大小写有区别,请注意
7. 菜单采用 frame 方式打开方法
8. 页面组件 ID 命名规范
A. dategrid组件name
C. 查询按钮对应的js方法
7 项目编码规范
7.1 项目编码规范
1. 项目编码格式为 UTF-8(包括:java,jsp,css,js)
2. sevice 接口命名:*ServiceI
service 实现命名:*ServiceImpl
entity 命名:*Entity
page页面form命名:*Page
action 命名:*Controller
项目没有 DAO, SQL 写在 Service 层
代码层次目录按照自动生成目录
3. SQL 文件目录和命名规范
(1).所有 SQL 必须大写,不允许用*,全部替换为字段
(2).SQL 文件根目录为:sql 跟接口目录 Service 是一个目录;
例如:srcsunsql,子目录跟 dao 必须保持一致
(3).SQL 文件命名:[dao 名字]_[dao方法名字].sql
4. 数据库表设计规范
(1).主键字段为 id (2).每个字段必须加备注
5. action 中的方法
配置菜单的方法:以 go 开头(其他方法不允许以 go 开头)
触发业务逻辑的方法:以 do 开头
页面跳转的:以 to 开头
6. Entity 和数据库自定命名规范
采用驼峰写法(每个单词首字母大写、其他字母小写的写法)转成中画线写法(所有字母小写,单词与单词之间以中画线隔开)
7.2 详细说明
[1].SQL 层讲解
A. 项目没有 DAO SQL 写在 Service 层,数据库取数和 DB 操作通过 service 层来实现
B.如果使用硬代码SQL,一个方法对应一个 SQL 的话,可以采用框架封装的方式来存储SQL文件
(表示采用命名规范来存储 SQL)
7.3 存储方式:
(1).所有 SQL 必须小写,不允许用*,全部替换为字段
(2).SQL 文件根目录为:srcsunsql,子目录跟 service 必须保持一致
(3).SQL 文件命名:[service 名字]_[方法名字].sql 读取方式:Stringsql =
hodSql(hodUrl());
7.4 举例讲解命名规范
例如:表名:jeecg_sys_demo
第一部分:代码文件命名规则如下:
首先: 表名采用驼峰写法转换为 Java 代码使用单词
jeecg_sys_demo => JeecgSysDemo
[1].control 命名 :
JeecgSysDemoControl
[2].Servlice命名:
JeecgSysDemoServiceI/JeecgSysDemoServiceImpl
[3].JSP 命名:
jeecg_sys_(表单页面)
jeecg_sys_demo_(列表页面)
jeecg_sys_demo_*.jsp(新增表单页面例如:detail)
[4].control 中方法命名:
页面触发业务方法以 do*开头
页面跳转方法以 go*开头
(方法标签注释需和方法名保持一致)
[5].page/entity 字段定义必须是对象类型
int --> Integer
发布评论