AutoGenerator 是 MyBatis-Plus 的代码生成器,通过 AutoGenerator 可以快速生成 Entity、Mapper、Mapper XML、Service、Controller 等各个模块的代码。 spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> 代码生成主类 com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine; public class PlusGenerator { public static void main(String[] args) { //代码生成器 "success" : "fail"; } } 代码生成器详细使用可参考:代码生成器
背景: 写后台管理系统,涉及大量的增,删除,改,查;而且使用分层开发文件太多,就想到能不能把基本的代码,通过一个代码生成器来生成,从而节约开发时间; (使用语言nodejs) 相关sql 语句 mysql funName }}Router.update{{ funName }}); module.exports = {{ funName }}Route; 界面 显示数据表列表,提供给用户选择,且提供”生成代码 capitalizeFirstLetter(item); let id; bindRoute({funName}); }) } ps: 生成控制层与模型层的方法比较复杂,代码下次分享
续接上一篇博客,今天生成器又加入了oracle的支持,界面做了些许的微调,先看一下效果吧 比之前好看了一点点吧,然后我们进行oracle配置 在这里随便选了公司局域网oracle数据库中的一张表 稍等片刻,弹出以下界面 左上角选择表,然后输入相关配置,在这里由于是oracle,sql从右往左执行,所以值设的越大,sql语句的查询条件就越靠后,跟mysql正好相反,代码已经做好了相应的处理 这个表的字段比较多,在这里我只选择了五列,其中把zzs和zzs_ybr设置为了可以排序,那么生成的前台代码用户可以自己选择正序倒序或者这两个字段任意组合排序。 设置完毕点击确定,提示设置成功,确定,关闭当前窗口即可 来到主界面,点击生成代码,稍等片刻,代码生成完毕。 导入idea也非常方便,选择pom.xml即可顺利导入,这里以eclipse为例 导入过程就不多说了,项目结构如下,在这里提一下,oracle由于版权问题不支持直接拉取ojdbc的依赖,坑爹啊,这里是生成器下载到本地然后进行的相应配置
代码生成器AutoGenerator 是 MyBatis-Plus 的代码生成器,通过 AutoGenerator 可以快速生成 Entity、Mapper、Mapper XML、Service、Controller 代码生成器需要添加一下依赖完整的pom.xml依赖代码 <dependencies> <dependency> <! --swagger2--> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId --代码生成器--> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator {% note success %} SwaggerConfig {% endnote %}@Configuration//配置类@EnableSwagger2//开启swagger2public class
简介 一个基于原生Mysql & SpringBoot & Mybatis 的代码生成器,建表之后即可完全解放双手,适合: 规律性定制化开发 解决双手,一键完成固有代码 原生mybatis.xml 文件,所有细节尽在掌握 支持拦截接口,允许开发者继承接口实现自定义文件内容 新增自动生成表结构说明文档 更新 2020年2月11日, 新增自动生成表结构说明文档 (基于自动拦截接口实现) 使用说明 该项目为普通 Java项目,使用时需要本地Java环境 + 可连接的Mysql数据库 拉取代码后,对如下内容进行配置(resources/application.properties)即可 [image-20200203181537363 : [image-20200203182231778] 技术细节 本项目主要的核心即两个通过mysql内置的表字段查询配合FreeMaker模板,构建具有一定规律性,通用的代码内容 FreeMaker 批量增,删,批量删,多条件分页查询,列表查询,单一查询,单一数据修改等 logback日志 SpringBoot 拔插式拦截器(基于org.reflections实现)- 支持继承指定接口,不改变其他代码情况下实现想要的功能
项目说明 本项目基于是基于 renren-generator 定制的代码生成器 文章目录 **项目说明** 不同点: 效果 原理分析 如何定制开发? 而且不支持 swagger,所以有了本项目 效果 原理分析 其实代码生成的原理非常简单,就是查询数据库的信息,然后通过模板引擎渲染出来 如何定制开发? 1 将写好的模板文件放入 template 目录下, 我是放到了 template/rzx 目录下 2 修改 GenUtils 类,getTemplates(模板资源加载的方法),getFileName renren-generator https://gitee.com/renrenio/renren-generator tkmybatis 源码 https://gitee.com/free/Mapper Lemur 代码生成器 (写的非常灵活) https://gitee.com/lemur/lemur-generation 可能存在的坑 因为是自动生成的代码,所以拷贝到自己的项目中的时候 要修改一下引用。
前段时间买了那个yupi的变成导航项目实战课,里面的这个内容就是介绍了一个类似于代码生成器的项目,购买书籍之后是可以去看这个对应的视频教程的,所以就可以学习一下这个项目,我相信,会让我们有收获的 的相关的这个文件的,然后我们创建文件的时候就是可以直接进行选择的,我们这个时候就不需要进行这个手动的书写; 下面的这个就是我们自己新建这个ignore文件的时候的这个可以攻我们进行选择的这个末班的内容; 2. 在这个项目里面最让我头疼的就是这个git提交的时候遇到的这个问题,我为了这个项目,应该是创建了四个仓库(失败之后删除重建),最后才得以解决; 1)主要是这个git的嵌套的问题:需要删除这个里层的这个.git文件; 2) 第一阶段的流程 静态文件:直接复制拷贝的文件,基本上不会发生太大的这个变动,例如这个md文件和这个ignore文件; 动态文件:就是需要进行修改和操作的文件,会受到我们的认为的影响; 1)生成动静态的文件; 2) 开始的单个生成,测试运行效果; 3)然后是同时生成这两个的文件,得到完整的acm代码的生成; 4)开发命令行的工具,接受我们的用户的输入,生成完整的代码; 5)打包,供用户进行使用; 4.hutool类的使用
今天给大家介绍一款laravel 代码生成器,用过之后才体会到其中的方便之处,大大的提高了开发效率 1.github:https://github.com/summerblue/generator 2. composer 引入 composer require “summerblue/generator:6.*” —dev 只在开发环境使用 3.使用示例(创建一个文章模型相关的代码) php artisan Articles --schema="title:string:index,desc:text,content:text,user_id:integer:unsigned:default(1)" 一起了看下代码生成器做了什么 1.创建数据表迁移文件 2.创建Article模型工厂类 3.创建Article模型填充类 4.创建模型Models/Article 5.创建Article模型资源控制器 6.创建Article模型请求类
MybatisPlus代码生成器 MybatisPlus存在代码生成器,能够根据数据库做到代码的一键生成。 : 123456 driver-class-name: com.mysql.cj.jdbc.Driver 接着就可以编写自动生成脚本,这里选择测试类,用到FastAutoGenerator作为生成器 .build(); }) .execute(); } } 之后我们就可以运行这个脚本,代码生成器会自动生成从 Mapper到Controller的所有代码,我们就只需要去完成业务逻辑就可以了。 对于一些有特殊要求的用户来说,我们希望能够以自己的模版来进行生产,怎么才能修改它自动生成的代码模版呢,我们可以直接找到mybatis-plus-generator的源码: 生成模版都在在这个里面有写,我们要做的就是去修改这些模版
MyBatisPlus代码生成器 1.代码生成器(新的) 官网地址:https://baomidou.com/pages/779a6e/#%E5%BF%AB%E9%80%9F%E5%85%A5%E9%97% 3.5.1 以下的请参考 代码生成器旧 1.1添加依赖 模板 <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator -- mybatis-plus代码生成核心包 最低3.5.1--> <dependency> <groupId>com.baomidou</groupId -- freemarker我们实现的功能使用的freemarker引擎代码--> <dependency> <groupId>org.freemarker</groupId ; 2.0 代码生成器配置新 官网地址:https://baomidou.com/pages/981406/#%E6%95%B0%E6%8D%AE%E5%BA%93%E9%85%8D%E7%BD%AE-datasourceconfig
MybatisPlus代码生成器 一、简介 二、使用教程 2.1 添加依赖 2.2 编写配置 2.2.1 全局配置 2.2.2 数据源配置 2.2.3 策略配置 2.2.4 包名策略配置 2.2.5 整合配置 2.2.6 执行 2.2.7 配置的完整代码: 2.2.8 官方文档地址 一、简介 AutoGenerator 是 MyBatis-Plus 的代码生成器,通过 AutoGenerator 二、使用教程 2.1 添加依赖 MyBatis-Plus 从 3.0.3 之后移除了代码生成器与模板引擎的默认依赖,需要手动添加相关依赖: 添加代码生成器依赖 <dependency> <groupId 接口的名字的首字母是否为I .setBaseResultMap(true) .setBaseColumnList(true); 2.2.2 数据源配置 //2、 接口的名字的首字母是否为I .setBaseResultMap(true) .setBaseColumnList(true); //2、
2 t_generator类和t_generator_registry类 这个两个类的主要功能就是为生成所有语言的代码提供基础信息和提供具体代码生成器对象,上面就是调用这个两个类的方法来生成具体语言的代码生成器对象和执行生成代码的功能函数 这个类是一个模板类,模板参数就是一个代码生成器类,所以函数get_generator就能够根据这个模板参数生成new一个对应语言的代码生成器对象了。 \n” ) 其他语言的代码生成器类的定义文件中都有类似的调用,这样每一个语言生成器对象的生产工厂就被注册到the_map中了,由此问题得到解决。 (2)t_generator类的generate_program函数 这个函数是生成具体语言代码的顶层函数,它会调用子类定义的各个子函数来做具体代码的生成过程,后面会详细解析C++、Java和Python 首先调用代码生成器的初始化函数来初始化代码生成器,然后依次调用各种基本数据类型和服务的生成函数来生成相应的代码,最后关闭代码生成器。
NLP技术可以用来生成实际的代码吗?我们离人工智能被用来编写软件的世界还有多远? 在这个博客中,我尝试构建一个python代码生成器,可以将简单的英语问题语句转换为相应的python代码。 ? 我们把这个问题当作一个序列对序列(Seq2Seq)的学习问题来解决。在这里,我们的英语句子将是我们的输入或SRC序列,而Python代码将是我们的输出或TRG序列。 在我以前的博客中,我已经详细解释了每一个组件中以及代码演练:https://ai.plainenglish.io/lets-pay-attention-to-transformers-a1c2dc566dbd : def add_two_numbers (num1 ,num2 ): sum =num1 +num2 return sum 在这里“英语声明” 是我们的输入,“Python代码” 在对python代码进行标识化时,我们随机屏蔽某些变量的名称(使用‘变量1,‘变量2’ 等等)以确保我们训练的模型不仅仅关注变量的命名方式,而且实际上试图理解python代码的内在逻辑和语法。
能用程序去做的事,就不要用手,编写自己的代码生成器就是用来解放你的双手,替你做一些重复性的工作。 于是用模板写了一个代码生成器,用于把数据库的表转换成go的struct,目前支持MySQL和PostgreSQL。这篇帖子写实现的思路和一些具体的代码实现。 模板 先看一下模板的代码,里面的知识点上篇帖子都有说过 ?
代码生成器初体验 开发人员提升的第一步:就是使用轮子或者创建轮子,减少CURD,集火核心业务和技术。 受此感念,开启了使用代码生成器的初体验。 1、Git拉取项目 首先拉取开源项目 https://gitee.com/wuming_yst/renren-generator.git 2、修改配置文件 修改数据库的连接信息,由于目前使用的MySQL8.0 删除了ServiceImpl.java.vm // 其实删除就是字面意思,注释掉该行代码 //templates.add("template/ServiceImpl.java.vm"); 4.2、Mgr.java.vm 这时在看Mgr的模板代码是不是感觉很熟悉呢? package ${package}. -- 例子2 --> #if($foreach.hasNext)and #end 如果你想了解更多,可以充分了解一下velocity(vm)模板引擎语法。
今天学习使用MybatisPlus生成Java web开发过程中我们最常需要的一些代码,包括包的创建,类的创建,mapper的生成 首先来看一张效果图 没错,上图中的所有代码都是自己生成的。 -- velocity 模板引擎, Mybatis Plus 代码生成器需要 --> <dependency> <groupId>org.apache.velocity</groupId> import org.junit.Test; public class CodeGenerator { @Test public void run() { // 1、创建代码生成器 mybatis-3-mapper.dtd"> <mapper namespace="cn.tompro.eduservice.mapper.EduTeacherMapper"> </mapper> 代码生成器还帮我们自定义了 RequestMapping("/eduservice/edu-teacher") public class EduTeacherController { } 可以看到路由地址都已经自动生成了,所以这个代码生成器还是很好用的
为了提高开发效率,我们需要一个通用的RPC代码生成器,能够支持多种RPC接入层级的代码生成,同时支持自定义插件和模板。并且自由增加自定义插件而不需要变更构建系统流程。 设计文档 代码生成器引擎版本和配置 目前 通用RPC代码生成器 有两个版本: Jinja2模板引擎: src/tools/generate-for-pb/jinja2-generator.py CMake 自动注入的模板变量和接口 全局模板 { "generator": "代码生成器路径", "local_vcs_user_name": "当前操作者用户名", "output_file_path "PbConvertRule": PbConvertRule // PbConvertRule里包含了一些命名转换定义 } Service模板 外层模板参数: { "generator": "代码生成器路径 "PbConvertRule": PbConvertRule // PbConvertRule里包含了一些命名转换定义 } Message模板 外层模板参数: { "generator": "代码生成器路径
最新君君利用业余时间写了一个Qt正则代码生成器,目前支持QRegExp和QRegularExpression类的正则代码生成。 代码生成可选择代码注释,全局匹配,贪婪匹配等多种配置。 还附带了简单的正则测试方法,左栏测试,右栏代码生成。所有配置即时生成。 代码已转译为WASM网页版本,体验地址:https://qthub.com/tool/RegexpCode 推荐PC电脑访问,效果好点。欢迎留言交流反馈。
文章目录 写在前面 1、mybatis-generator 1.1、第一种:利用maven插件实现 1.2、第二种:利用java代码实现 2、mybatis-plus-generator 写在前面 我们在 java开发中,经常要建一些常用的包、类,他们都千篇一律,没什么技术含量,于是我们想到了用代码生成器去自动生成他们,例如mapper、dao、实体类。 --代码自动生成器的依赖--> <dependency> <groupId>org.mybatis.generator</groupId> 2、mybatis-plus-generator 官方文档:https://mp.baomidou.com/guide/generator.html 添加 代码生成器 依赖 <! --代码生成器依赖--> <dependency> <groupId>com.baomidou</groupId> <artifactId
时隔一周多,今天终于抽出时间来更新一波代码生成器,最近公司让我研究rpa,弄得焦头烂额的,话不多说,进入正题。 之前有朋友让我讲一下代码生成器的原理,这篇博客就大体描述一下,以后慢慢细致讲解。 ,修改页面的样式是没有问题的,如果你熟悉freemarker的语法,那么大可以去修改模板,这样就可以生成你想要的页面和代码了。 检查更新完毕后,就会弹出生成器的主界面,首先还是最开始的配置,这次我选择了medicine数据库中的两个表,medicinemsg和patient。 然后首先对medicinemsg表进行配置,如下,在这里我把不同的业务类型都选择了一遍,生成代码的时候就会生成不同的样式和sql,表patient随便配置俩字段。 然后关闭配置项界面回到主界面点击生成代码,然后就会根据模板动态生成相应的代码 把生成的项目导入eclipse,查看一下生成的sql,没有问题 访问localhost:8080/freeout/home