栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

我是怎样快速生成开源系统中的代码的??

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

我是怎样快速生成开源系统中的代码的??

写在前面:

最近有一个想法,做一个程序员师徒管理系统。因为在大学期间的我在学习java的时候非常地迷茫,找不到自己的方向,也没有一个社会上有经验的前辈去指导,所以走了很多的弯路。后来工作了,想把自己的避坑经验分享给别人,但是发现身边都是有经验的开发者,也没有机会去分享自己的想法,所以富贵同学就想做一个程序员专属的师徒系统,秉承着徒弟能够有人指教少走弯路,师傅能桃李满天下的目的,所以开始做这个师徒系统,也会同步更新该系统所用到的技术,并且作为教程分享给大家,希望大家能够关注一波。

好的,接下来给大家讲一讲改系统中自动生成代码用到的技术:MybatisPlus,用SpringBoot整合MybatisPlus。
这个框架是中国人写的哈,所以他的文档也就通俗易懂,首先贴一波他的官方文档:
官方文档
很多东西上面已经讲的很详细了,如果有不懂的小伙伴在评论区留言,后面会考虑出一期MybatisPlus的教程,今天我们来讲一下MybatisPlus里面的一个小功能:快速生成代码。
同样贴一波地址快速生成代码文档
在这个文档里我们可以看到快速生成的例子:

FastAutoGenerator.create("url", "username", "password")
	.globalConfig(builder -> {
		builder.author("baomidou") // 设置作者
            .enableSwagger() // 开启 swagger 模式
			.fileOverride() // 覆盖已生成文件
			.outputDir("D://"); // 指定输出目录
	})
	.packageConfig(builder -> {
		builder.parent("com.baomidou.mybatisplus.samples.generator") // 设置父包名
			.moduleName("system") // 设置父包模块名
            .pathInfo(Collections.singletonMap(OutputFile.mapperXml, "D://")); // 设置mapperXml生成路径
	})
	.strategyConfig(builder -> {
		builder.addInclude("t_simple") // 设置需要生成的表名
			.addTablePrefix("t_", "c_"); // 设置过滤表前缀
	})
	.templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
	.execute();

下面富贵同学就来给大家讲解一下这个小东东:

第一步:导入jar包
		 
            com.baomidou
            mybatis-plus-generator
            3.5.1
        
        
            org.apache.velocity
            velocity-engine-core
            2.0
        

第二步,在test类里面添加以下代码:

   FastAutoGenerator.create("jdbc:mysql://127.0.0.1:3306/apprentice?serverTimezone=PRC", "root", "123456")
                .globalConfig(builder -> {
                    builder.author("masiyi") // 设置作者
                            .enableSwagger() // 开启 swagger 模式
                            .fileOverride() // 覆盖已生成文件
                            .disableOpenDir()//不打开目录
                            .commentDate("yyyy-MM-dd")//注释时间
                            .outputDir("E:\msyWorkspace\Programmer-Apprentice\apprentice\src\main\java"); // 指定输出目录

                })
                .packageConfig(builder -> {
                    builder.parent("com.wangfugui") // 设置父包名
                            .moduleName("apprentice") // 设置父包模块名
                            .entity("dao.domain")//实体类包
                            .service("service")//service包
                            .serviceImpl("service.impl")//实现类bao
                            .mapper("dao.mapper")//mapper包
                            .controller("controller")//controller包
                            .pathInfo(Collections.singletonMap(OutputFile.mapperXml, "E:\msyWorkspace\Programmer-Apprentice\apprentice\src\main\resources\mapper")); // 设置mapperXml生成路径
                })
                .strategyConfig(builder -> {
                    builder.addInclude("user_copy1"); // 设置需要生成的表名
                })
                .execute();//执行

packageConfig里面要注意填写你对应的包位置,相对位置是src\main\java注释我都写在代码注释里了,最后执行这个方法就生成对应的各个层的代码了!

说在之后

师徒系统我会一直更新,因为是开源的项目,所以我也希望又更多的小伙伴加入进来!!
这是程序员师徒管理系统的地址:
程序员师徒管理系统

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/353507.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号