最近为了方便本身的工做,想写一个简单的DNS资源记录的管理系统,这类管理系统其实以前也用各类编程语言、各种框架实现过,功能上虽说不是很完善,但也能知足本身的一些系统管理工做。其实最简单的无非是把已有的拿过来改改,但这样有点繁琐,并且容易出错,不符合程序员的思惟——能用代码自动完成的,就不手工去作。虽然编写代码须要时间,可是后期使用就很方便,就像我常说的磨刀不误砍柴工。html
因此就想着去找一个直接经过代码,根据项目配置信息如表结构、字段等信息能自动生成常见的增删查改等通用功能的已有解决方案,无心间了解到JEECG-BOOT
,使用下来仍是很是符合我预期的目标的。前端
如下一些特性是也是我以前项目里常常用到的,在JEECG-BOOT
里都有提供:vue
Spring boot
,这样直接在IDE
中运行main,能够打包生成JAR
包,部署的时候不须要额外安装配置如Tomcat等Servlet应用服务器。JWT
的REST
风格的API,前端是基于React
、Vue
等现代前端框架,方便开发和维护。JEECG-BOOT
目前使用的是vue
。React
版本,仍是很方便,界面简洁大气,优雅美观。下面一些特性是JEECG-BOOT
自带的比较有特点的内容:node
JEECG-BOOT
的一些要求,例如主键字段名称、类型,一些额外的辅助字段。Vue
里面的Mixins
,把类似的功能封装成可复用的组件,这样生成的List
、Modal
组件里面的内容相对来讲也简洁清爽,也不失定制可扩展性。JEECG-BOOT
里面也支持的比较好,结合v-has
和@RequiresPermissions
可支持真实的动态权限管理,以前本身写的小项目,通常都是本身用或者提供给少数对技术不是很懂的人,就只是在前端层面控制一些功能的显示或隐藏了。其实上面我列举的这些功能点都是从我本身使用角度简单总结的,实际上从项目的README中能够看到不少其余通用并且使用的特性,固然也有功能强大的在线开发功能,不过目前开源版本的在线开发功能有所限制,但对于通常项目而言其实也够用了,详情能够参考 https://github.com/zhangdaiscott/JEECG-BOOT ,我这里就不复制引用了。git
下面再说一些本身在使用过程当中遇到的问题或者说坑:程序员
jeecg-boot\jeecg-boot-module-system\src\main\resources\application-dev.yml
和jeecg-boot\jeecg-boot-module-system\src\main\resources\jeecg\jeecg_database.properties
,前面一个是项目运行时候的数据源,后面一个是JEECG代码生成器相关的数据源,可参考 http://idoc.jeecg.com/1275928 ,我通常为了简化及方便管理这两个都设置成同样的。npm
的源,用taobao
的或者cnpm
的,建议全局安装nrm
,由nrm
来管理源,另外依赖项使用yarn
安装会比较好一些,不容易出错,并且速度快,若是npm
下安装的依赖项运行启动的时候报错能够尝试把node_modules
删掉,而后使用yarn
从新安装。redis
忘记启动了,redis
不须要作任何配置,默认监听127.0.0.1
的默认端口就行。 -JEECG-BOOT
2.x版本开始后端代码采用多模块方式,建议本身写的模块使用单独的一个模块,不要放到jeecg-boot-module-system
中,这样不会混淆框架代码和本身应用层面的代码,也便于升级、维护。IDE
方面我本身是使用VSCode
,打开一个VSCode
窗口,在内置终端中yarn serve
运行前端,调试模式下运行后端,这样不用来回切换,比较高效一些,相比其余同时打开多个IDE
来讲,不会卡顿,我的推荐。切记须要安装lombok
扩展。调试或运行模式时若是修改的内容较少,例如修改一个方法里面的实现,可使用热加载更新,这样就不用每次都重启后端。遇到问题,能够尝试着仔细看一下错误堆栈信息,不要惧怕和担忧那些须要翻页和一行上很是长的错误信息,有时候能够根据错误信息就知道什么地方出错了;其次还要多会用、善用搜索引擎,推荐谷歌,若是访问不了,能够用Bing,用百度搜索出来的结果我的感受较差。github
最后提供几个在写代码过程当中会来回翻阅的文档,若是能够的话,尽可能看官方的,英文原生的,有些文档没有中文版或者中文版的比较陈旧,翻译质量较差,不少内容都匹配不上。redis