学习JEECG的个人看法

一、个人感悟

公司里存在着两大阵营,C#与Java语言,所谓世界上没有最好的语言,只有最好的程序猿。本人使用Java开发也有几个年头,经过两个月的研究学习,从多首页风格的展示及多组织的区分,前台代码的封装及使用大大的提升了工作效率。一些普通的增删改查功能单表操作等...可直接通过代码生成器完成。简单快捷,同时集成了当下流行的Echarts、EasyUI、JqueryUI等等。开发图形报表及前台界面美观实用。

二、了解JEECG的相关知识

JEECG的技术集成比较多元素,其中主要技术点有

技术点一:Online Coding在线开发(通过在线配置实现一个表模型的增删改查功能,无需一行代码,支持用户自定义表单布局) ,该功能可实现复杂表单的业务配置(多表头多表体等..),同时也可在线生成配置完成的代码。

 

技术点二:代码生成器,支持多种数据模型,根据表生成对应的Entity,Service,Dao,Action,JSP等,增删改查功能生成直接使用,该功能可实现单表单的业务配置,对应生成的代码模板可自行修改配置,做到个性化配置。

 

技术点三:UI快速开发库,针对WEB UI进行标准封装,页面统一采用UI标签实现功能:数据datagrid,表单校验,Popup,Tab等,实现JSP页面零JS,开发维护非常高效,JEECG把前台显示的一些控件都封装成了对应的类,不懂前台的同学都可以轻松的使用对应的控件开发。

 

技术点四:在线流程定义,采用开源Activiti流程引擎,实现在线画流程,自定义表单,表单挂接,业务流转,流程监控,流程跟踪,流程委托等,Activiti工作流引擎是目前使用较多且较灵活的开源功能。貌似JEECG的Activiti版并没有对外开源,所以对于JEECG的Activiti版封装程度不是很了解。

 

技术点五:自定义表单,支持用户自定义表单布局,支持单表、列表、Select\Radio\Checkbox\PopUP\Date等特殊控件,用户不能对DataGrid的列进行左右拖拽显示及保存拖拽后的显示顺序。

 

技术点六:查询过滤器:查询功能自动生成,后台动态拼SQL追加查询条件;支持多种匹配方式(全匹配/模糊查询/包含查询/不匹配查询),查询过滤器使用的还是传统的表头格式查询。另:如果DataGrid的列功能像FineUI的DataGrid的列功能一样强大就好了。FineUI的DataGrid做得好的地方是列可以直接选择过滤。DataGrid行里可以直接点击对应的行列进行内容编辑,此事件如果JEECG实现起来会更好用。可以像用友U9类似的查询方案,可自主配置使用起来更灵活。

 

技术点七:移动平台支持,对Bootstrap(兼容Html5)进行标准封装 。官方介绍里有移动应用端的图形界面,具体尚未使用也不太清楚支持的程序如何。大家如果有这方便的需求可以去官方查看例子

 

技术点八:动态报表功能(用户输入一个sql,系统自动解析生成报表),动态报表也是一个比较实用的东西,不过对于公司的多元化管理对应报表的要求可能更复杂,可以借鉴此功能自主开发出想实现的功能也不是难事。

 

技术点九:数据权限(精细化数据权限控制,控制到行级,列表级,表单字段级,实现不同人看不同数据,不同人对同一个页面操作不同字段),数据权限的控制范围挺全面的,只是在数据权限控制配置页面显示不够直观。需要比较有经验的人员才能配置

 

技术点十:国际化(支持多语言,国际化的封装为多语言做了便捷支持),JEECG对国际化的功能我使用配置过,给我的感觉就是添加数据源的时候比较麻烦,PS:一个字段要添加对应的语言(中英文各一次)两次,如果能把添加中英文写在一个界面同时添加两个值,也避免了相同key值输入错误的问题。

 

技术点十一:多数据源(在线配置数据源,数据源工作类封装),该功能能配置JEECG系统使用多个数据库连接,友好的配置界面及数据库连接提示。

 

技术点十二:多种首页风格切换,支持自定义首页风格。(经典风格、Shortcut风格、ACE bootstrap风格、云桌面风格),多种风格可自由切换,对用户的体验也是很好的感觉。如果在风格里再加些主题元素会不会更个性化些,比如用户喜欢某风格的浅色主题,或深色主题。表格通过主题显示行颜色交替,使表格看起来不那么单调。

 

技术点十三:在线配置报表(无需编码,通过在线配置方式,实现曲线图,柱状图,数据等报表),此功能如果能进行动态的模型拖拽,及公式配置。配置界面友好些,我相信这个功能块是一个很不错的亮点。

 

技术点十四:简易Excel导入导出,支持单表导出和一对多表模式导出,生成的代码自带导入导出功能,Excel的导入导出功能通过对实体字段的标注,把需要导出的属性都集成了。方便开发者代码维护。

 

技术点十五:移动OA,移动OA审批功能,采用H5技术,实现手机移动办公,无缝对接微信、钉钉、微信企业号、也可以做APP

 

技术点十六:移动图表,在线配置移动报表,采用H5技术,可以手机端查看

 

技术点十七:插件开发,业务功能组件以插件方式集成平台,也可以单独部署发发布,有力支撑了SAAS云应用系统需求

 

技术点十八:专业接口对接机制,统一采用restful接口方式,集成swagger-ui在线接口文档,Jwt token安全验证,方便客户端对接

 

技术点十九:接口安全机制,可细化控制接口授权,非常简便实现不同客户端只看自己数据等控制

 

技术点二十:高级组合查询功能,在线配置支持主子表关联查询,可保存查询历史

 

技术点二十一:支持二级管理员,权限细化管理

 

技术点二十二:代码生成器支持resutful接口生成

三、希望改进的地方

3.1、DataGrid支持的列进行左右拖拽显示及保存拖拽后的显示顺序。

3.2、DataGrid行里可以直接点击对应的行列进行内容编辑。

3.3、开发文档补充由浅入深全面介绍,及所有控件属性介绍及使用方法。

3.4、国际化语言添加key值时,key值只需写一次,对应的中英文在一个界面填写。

3.5、流程配置节点上增加动态接口配置。用来实现配置流程时可以对某个节点需要调用外部接口直接参数化配置。

3.6、建议优化集成的第三方工具,比如:WebSocket在线聊天、Echarts封装可支持用户拖拽配置生成前台界面。

3.7、数据字典的完善与规范化。使得JEECG产品更标准更完善。

四、完结心得

经过两个月对JEECG的学习,了解到一些平时工作中没有使用到的功能。在这里能更深入去了解与应用。同时也加深了自己的开发经验。JEECG的框架是把写代码的工作量提升了很大一个档次。在未来的行业里,相对一个功能如果能用配置功能实现的话, 比开发功能实现从成本和效率都要低得多。JEECG适合有Java语言基础的人学习。是一个值得用心去研究的平台。

 


你可能感兴趣的:(JAVA技术,JAVA,IT)