1.基于JEECG3.5.2,提供多种数据源的代码生成,目前支持Oracle良好;

2.可动态配置数据源; 可动态配置模板集合,基于freemarker的模板文件; 可选择需要生成的数据表; 可导入一个java类,根据配置的模板,生成对应的代码文件;

3.目前的这个扩展,主要解决以下的问题; 动态的选择一个oracle数据源,选择一个数据表; 根据配置的模板集合如:dao、entity、service、controller、view、js(其中主要是view、js)生成对应的代码文件; 这个模板如果不合适可以在线修改,重新生成对应的代码; 这个主要是单表的一体化生成,如果是多表的话,可以在对应的代码文件里再修改下;

根据java类来生成代码,这个就很简单了,主要是项目中用到的entity-dto的互转,大部分这两层代码都定义的差不多,手工互转还是 很累的,当然如果完全一样也可以用反射,不过为了扩展需要和性能需要不建议反射;这里,只需要定义一个互转的模板,就可以生成需要的代码;

不可能完全做到生成代码自动化,完全自动化的话对项目的约定很死,也不符合项目的扩展需要;所以能做到半自动代码生成就够了,需要扩展自己改改就行;

相比其他的代码生成工具,就是在线制定代码模板;

a、下面这个数据配置表,就是配置数据源,数据源的信息采用json格式;

b.下面这个是模板管理,外面的模板名称相当于一个模板组,点击进去可以添加对应的具体模板文件,如图“iparser项目模板”里建了3个具体的模板文件

下面这个就是模板文件的具体类容,模板文件采用freemarker编写;

c.下图就是代码生成页面了,首先选择数据源-》数据表,再选择代码模板-》具体的模板,配置包名称;点击”代码生成”

下图就是最终生成的代码文件,可以直接复制到项目中,也可以先修改下再复制;

d、java代码文件的代码生成,如下图所示,输入简单的java类,选择模板,“生成代码”

 

git源码:myjeecg

基于JEECG的代码模板自动生成的更多相关文章

  1. 基于数据库的代码自动生成工具,生成JavaBean、生成数据库文档、生成前后端代码等(v6.0.0版)

    TableGo v6.0.0 版震撼发布,此次版本更新如下: 1.UI界面大改版,组件大调整,提升界面功能的可扩展性. 2.新增BeautyEye主题,界面更加清新美观,也可以通过配置切换到原生Jav ...

  2. 基于注解处理器开发自动生成getter和setter方法的插件

    昨天无意中,逛到了lombok的网站,并看到了首页的5分钟视频,视频中的作者只是在实体类中写了几个字段,就可以自动编译为含setter.getter.toString()等方法的class文件.看着挺 ...

  3. 使用bee自动生成api文档

    beego中的bee工具可以方便的自动生成api文档,基于数据库字段,自动生成golang版基于beego的crud代码,方法如下: 1.进入到gopath目录的src下执行命令: bee api a ...

  4. 基于MVC4+EasyUI的Web开发框架经验总结(14)--自动生成图标样式文件和图标的选择操作

    在很多Web系统中,一般都可能提供一些图标的选择,方便配置按钮,菜单等界面元素的图标,从而是Web系统界面看起来更加美观和协调.但是在系统中一般内置的图标样式相对比较有限,而且硬编码写到样式表里面,这 ...

  5. 基于OCILIB的oracle数据库操作总结及自动生成Model和Dao的工具

    基于OCILIB的oracle数据库操作总结 1.       类图 2.       基类BaseOCIDao的设计与实现 BaseOCIDao.h头文件 #pragma once /* ----- ...

  6. 基于eclipse的mybatis映射代码自动生成的插件

    基于eclipse的mybatis映射代码自动生成的插件 分类: JAVA 数据库 工具相关2012-04-29 00:15 2157人阅读 评论(9) 收藏 举报 eclipsegeneratori ...

  7. 基于eclipse的mybatis映射代码自动生成的插件http://blog.csdn.net/fu9958/article/details/7521681

    基于eclipse的mybatis映射代码自动生成的插件 分类: JAVA 数据库 工具相关2012-04-29 00:15 2157人阅读 评论(9) 收藏 举报 eclipsegeneratori ...

  8. 基于数据库的自动化生成工具,自动生成JavaBean、自动生成数据库文档等(v4.1.2版)

            目录:            第1版:http://blog.csdn.net/vipbooks/article/details/51912143            第2版:htt ...

  9. API的文档自动生成——基于CDIF的SOA基本能力

    当前,作为大部分移动app和云服务后台之间的标准连接方式,REST API已经得到了绝大部分开发者的认可和广泛的应用.近年来,在新兴API经济模式逐渐兴起,许多厂商纷纷将自己的后台业务能力作为REST ...

随机推荐

  1. 用sqldevelop进行连接linux中ret Hat 6.2 中的oracle步骤

    1.下载Oracle Instant Client (32-bit) 因为PL/SQL只支持32位的Oracle,所以必须下载对应的32位的才可以. 只需要下载instantclient-basic- ...

  2. iOS开发- 隐藏键盘总结

    一.隐藏自身软键盘 当对于有多个UITextField控件都想通过点击"Return"来隐藏自身软键盘的情况.这时的最好办法是使用Did End on Exit事件.在点击软键盘右 ...

  3. 【laravel54】报错:No supported encrypter found (加密类未找到)

    原因:配置环境未生产 key 密钥,直接cmd,进入项目根目录,执行:php artisan key:generate  即可

  4. IO多路复用之poll

    1.基本知识 poll的机制与select类似,与select在本质上没有多大差别,管理多个描述符也是进行轮询,根据描述符的状态进行处理,但是poll没有最大文件描述符数量的限制.poll和selec ...

  5. Python 列表 max() 方法

    描述 Python 列表 max() 方法返回列表元素中的最大值. 语法 max() 方法语法: max(L) 参数 L -- 要返回最大值的列表. 返回值 返回列表元素中的最大值. 实例 以下实例展 ...

  6. Python zfill() 方法

    描述 Python zfill() 方法返回指定长度的字符串,原字符串右对齐,前面填充0. 语法 zfill()方法语法: S.zfill(width) 参数 width -- 指定字符串的长度.原字 ...

  7. ajax异步请求,session失效处理

    后台拦截器代码: // 判断是否是AJAX请求 if (isAjaxRequest(request)) { log.info("AjaxRequest请求"); ActionCon ...

  8. unity, 用脚本创建mesh

    创建一个空gameObject,添加Mesh Filter和Mesh Renderer两个component,再添加一个脚本createMeshScript: using UnityEngine;us ...

  9. Ubuntu14.04单机版kubernetes安装指导

    转:http://dockone.io/article/950 概述本文主要讲述如何在Ubuntu系统上安装kubernetes,网络上也有许多相关的文章,感觉都不是很清晰,这里我将自己的安装实践给大 ...

  10. [Jobdu] 题目1544:数字序列区间最小值

    题目描述: 给定一个数字序列,查询任意给定区间内数字的最小值. 输入: 输入包含多组测试用例,每组测试用例的开头为一个整数n(1<=n<=100000),代表数字序列的长度.接下去一行给出 ...