jeecg使用心得
接触到jeecg框架是在去年,接触到了jeecg开源框架,此框架为企业级急速开发框架,不了解的可以百度下这类框架的,对于目前状态来说,此框架确实也满足了所需,此刻就开始接触jeecg框架,去年六七月份版本为3.6.5。刚开始接触此类框架连安装都存在困难,好在技术群里网友jim的帮助和看bbs官方论坛必看问题,总算是跑起来了。
在用此框架的过程中,认识到此框架集成了各种主流前后端框架和插件,而且可插拔,代码可按照业务和代码分层,按照mvc分层,前端数据主页面是对easyui的标签化,三种展示风格,体验感强,导入导出用的是easypoi,打印lodop、弹窗lhgdialog、校验validform等都是应用比较广泛的插件,对于初学者来所,上手很快。如果对于前端此类插件不了解的,插件的官网demo和api也能很及时解决一些问题,很有必要去看看。
用了此框架,在这中间意识到在一定增删改查范围内,此框架都能满足,牵扯到一下复杂表单和业务,此框架也是可以扩展,开源的好处就是代码你可以通过修改来满足所需所求,src/main/Java/org/jeecgframework/tag/core/easyui下都是对前端展示标签的封装,可以在此修改来满足所需,特别是ERP项目,本框架在权限管理方面做的也很好,角色、用户、机构三者互相关联,可配置、灵活多变,角色控制展示菜单节点,机构可以控制数据权限。复杂行列展示也可以通过全局字段来控制,也可以通过修改代码来控制精细化权限的控制,可以说灵活多变、配置强。
在使用过程中,此框架存在一些问题,缺乏灵活度,比如对前端页面的美化,封装easyui标签,本身easyui已经相对过时,后端对其封装并且标签化,紧耦合,难脱离,核心已经定死,所以基本围绕此标签来开发,需要花费时间学习,包括前端以及后台的交互,框架权限是他们写的一套拦截sql并且在springmvc拦截器注入的形式实现的权限拦截,功能和shiro无法比拟,工作流未开源,部分源码未开源,非模块化,核心动一处,牵扯比较多。hibernate相对mybatis来说,缺点不言而喻。建议架构核心进行重构,以功能为模块。用相对来说更加具有优点、灵活的技术替代掉次一些的技术。
一般平台存在运维人员,是否有必要添加一些主流功能或者封装,更加人性化,对于使用者来说也是很不错的。
对于数据的查询方面jeecg用的是hibernate qbc查询,相对于hql查询来说 qbc缺少一定的灵活性,个人推荐使用hql查询,当出现多表联查时候,外表引用数据可有可无的情况下,点击外表列排序就会出现空数据展示不出来的情况,算是个bug。
此框架牵扯到业务来说,还是需要编写很多js代码来实现的,不过,一般都有demo,可以在原有demo上进行扩展,对初学者来说建议多看每个功能的前后端实现代码,刨根问底,一定会受益匪浅。
对于easyui列编辑,有必要进行一些封装和完善,毕竟列编辑也很受欢迎。
做开发这一行也就是这样,每天都是挑战,喜欢挑战,敢于挑战,而且乐在其中,我想也是开发人员所具备的特点,
本文只是对此框架使用心得。
推荐一款开源框架采用spring boot+spring+SpringMvc+mybatis+shiro+activiti工作流+swagger+ehcache+quartz+freemarker+layui技术开发,含有工作流
完全开源:www.lenosp.cn
jeecg使用心得的更多相关文章
- 使用JEECG心得
使用JEECG心得 我就不做JEECG的介绍了,提供一个网址.能够更加清晰的了解JEECG文档. http://www.jeecg.org/book/jeecg_v3.html 用JEECG已经几乎相 ...
- Jeecg心得篇--这个世界不缺程序员,而是缺少匠人和架构师
真正的快乐,是用自己喜欢的方式过完这一生.来人间一趟,不能只为了活着. 这个世界不缺程序员,而是缺少匠人精神的架构师与产品经理. 因为他们通过自己的行为与理念默默地改变着世界,一个更好的世界. 这是我 ...
- 1、jeecg 笔记开篇
1. 前言 终究还是入了 jeecg 的 "坑",国庆后公司采用该框架开发,故开篇记录. 虽说入"坑",但不得不承认 jeecg 确实是一个非常强大的平台. 其 ...
- WordPress研究心得
WordPress,当初之所以研究这个,目的是在于开发一个多租户系统应用.总的来说,WordPress给了我不少启发和影响.为此,我决定这个研究心得分享出去. 总的来说,这篇文章参考了很多朋友们的博客 ...
- 我的MYSQL学习心得(一) 简单语法
我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
- NoSql数据库使用半年后在设计上面的一些心得
NoSql数据库这个概念听闻许久了,也陆续看到很多公司和产品都在使用,优缺点似乎都被分析的清清楚楚.但我心里一直存有一个疑惑,它的出现究竟是为了解决什么问题? 这个疑惑非常大,为此我看了很多分析文章, ...
- 我的MYSQL学习心得(二) 数据类型宽度
我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
- 我的MYSQL学习心得(三) 查看字段长度
我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
- 我的MYSQL学习心得(四) 数据类型
我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(五) 运 ...
随机推荐
- Android笔记(二十六) Android中的广播——BroadcastReceiver
为了方便进行系统级别的消息通知,Android有一套类似广播的消息机制,每个应用程序都可以对自己感兴趣的广播进行注册,这样该程序就只会接收自己所关心的广播内容,这些广播可能是来自于系统,也可能是来自于 ...
- ES6中let、const和var的区别
一.let 1.基本用法 ES6 新增了let命令,用来声明变量. let 的用法类似于 var,但所声明的变量只在 let 命令所在的代码块内有效(一个“{}”相当于一个代码块) { let a = ...
- Ignatius and the Princess IV (简单DP,排序)
方法一: 直接进行排序,输出第(n+1)/2位置上的数即可. (容易超时,关闭同步后勉强卡过) #include<iostream> #include<cstdio> # ...
- 【开200数组解决二叉搜索树的建立、遍历】PAT-L3-016. 二叉搜索树的结构——不用链表来搞定二叉搜索树
L3-016. 二叉搜索树的结构 二叉搜索树或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值:若它的右子树不空,则右子树上所有结点的值均大于它 ...
- Android-jacoco代码覆盖率:单元测试覆盖率+功能测试覆盖率
参考:https://docs.gradle.org/current/dsl/org.gradle.testing.jacoco.tasks.JacocoCoverageVerification.ht ...
- vue 自定义事件
- P3588 [POI2015]PUS
好题 思路:线段树优化建图+拓扑DP or 差分约束(都差不多): 提交:3次 错因:眼瞎没看题,Inf写的0x3f3f3f3f 题解: 类似差分约束的模型,\(a<b\rightarrow a ...
- &和&&,|和||的用法区别
&和&&的区别是,&会执行两边,不管第一个是否成立&&只会执行一边,如果第一个条件为假,则不会走第二个条件举例public class Test2{ p ...
- 学到了林海峰,武沛齐讲的Day21-完 模块和包
调用包,会执行包的__init__.py "IF__name__=='__main__':执行当前文件会执行" time random 开始玩高级的了.. 爽
- 14 | count(*)这么慢,我该怎么办?
在开发系统的时候,你可能经常需要计算一个表的行数,比如一个交易系统的所有变更记录总数.这时候你可能会想,一条select count(*) from t 语句不就解决了吗? 但是,你会发现随着系统中记 ...