文档章节

Mybatis Auto Code Generation

熊大信了熊二的话
 熊大信了熊二的话
发布于 2016/08/17 10:55
字数 372
阅读 31
收藏 0
点赞 0
评论 0

Mybatis Auto Code Generation Mapper/Service/Domain/SQL.xml, 主要是针对某个数据库所有表[参考配置文件ConfigConstants], 统一生成Domain/Service/Mapper,以及SQL.xml文件, 如:针对t_customer, 通过该应用生成CustonerInfo.java, CustomerSerivce.java/CustomerServiceImpl.java, CustomerMapper.java 以及 Customer-mapper.xml文件. 小工具类

Project run MainTest

@RunWith(SpringRunner.class)
@SpringBootTest(classes=SimpleApplication.class)
public class MainTest {
    Logger logger = LoggerFactory.getLogger(getClass());
    @Autowired
    private TableService tableService;

    @Test
    public void main() {
        long startTime = System.currentTimeMillis();
        logger.info("...........start application.........");

        tableService.run();

        logger.info("...end application...Time: {}",(System.currentTimeMillis()-startTime));
    }
}

Generate Code Config

public interface ConfigConstants {
    /**定义Schema*/
    String SCHEMA = "longchou-loan";

    /**移除表前缀*/
    String REMOVE_TABLE_PREFIX = "t_";

    /**Domain后缀, CustomerInfo*/
    String DOMAIN_SUFFIX = "";

    /**生成文件路径*/
    String FILE_PATH = "E:\\gitwork\\code-generation\\src\\main\\java";

    /**MyBatis SQL生成文件路径*/
    String SQL_PATH = "E:\\gitwork\\code-generation\\src\\main\\resources\\mappers";

    /**生成Mapper.xml后缀名字, EX: customer-mapper.xml*/
    String SQL_MAPPER_SUFFIX = "-mapper";

    /**生成包名称*/
    String ROOT_PACKAGE = "com.lance.code";

    /**JavaBean包名称*/
    String DOMAIN_PACKAGE = "domain";

    /**service包名称*/
    String SERVICE_PACKAGE = "service";

    /**serviceImpl包名称*/
    String SERVICE_impl_PACKAGE = "serviceImpl";

    /**mapper包名称*/
    String MAPPER_PACKAGE = "mapper";
}

Add dependencies to pom

<parent>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-parent</artifactId>
   <version>1.4.0.RELEASE</version>
</parent>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- Mybatis -->
<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>1.1.1</version>
</dependency>
<!-- MYSQL -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.12</version>
</dependency>
<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-lang3</artifactId>
    <version>3.4</version>
</dependency>

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
    <scope>test</scope>
</dependency>
<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <scope>test</scope>
</dependency>

完整示例参考

https://github.com/leelance/code-generation

© 著作权归作者所有

共有 人打赏支持
熊大信了熊二的话
粉丝 38
博文 7
码字总数 3352
作品 0
上海
后端工程师
Java 代码生成器合集--Auto

Auto 是 Google 开发的一组 Java 代码生成器。 Java 有许多机械、重复、未经测试的代码,而且有时会出现一些微妙的 Bug 。Auto 项目是自动执行这些类型的任务的代码生成器的集合,他们可以无...

匿名 ⋅ 2017/01/19 ⋅ 0

WildFly 10.1.0 发布,Java 应用服务器

WildFly 10.1.0 发布了,它带来了更简化、标准化和嵌入式特性,适合云计算和移动开发场景。 主要更新如下: Out of the box HTTP/2 support with no JVM flags required ! TLS cert auto-gen...

局长 ⋅ 2016/08/21 ⋅ 12

Google Go for IntelliJ Idea

这是一个 IntelliJ IDEA 的插件,用来开发 Google Go 的应用程序。 主要功能: Basic language parsing and highlighting Code folding Brace matching Comment/Uncomment (Single/Multiple......

匿名 ⋅ 2012/07/09 ⋅ 0

Rider 2017.2 EAP 2 发布,.NET 跨平台集成开发环境

Rider 2017.2 EAP 2 发布了。Rider 是一个跨平台的 .NET IDE:可以在 Windows、Mac 和 Linux 上使用。Rider 允许开发 ASP.NET、.NET Core、.NET Framework、Xamarin 和 Unity 应用程序。本次...

两味真火 ⋅ 2017/09/23 ⋅ 2

初级mybatis教程

第一步: 添加相应的jar 去吧http://code.google.com/p/mybatis/ 下载 MyBatis Core Framework 在myeclipse 创建 mybatis web 项目 添加相应的包 下面我一数据库表student 为例 进行项目的搭...

空_明 ⋅ 2013/01/21 ⋅ 0

SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)

SSM(spring、SpringMVC和Mybatis) 1、基本概念 1.1、Spring 1.2、SpringMVC 1.3、MyBatis 2、开发环境搭建 如果需要,参看之前的博文:http://blog.csdn.NET/zhshulin/article/details/307...

卯金刀GG ⋅ 2016/10/21 ⋅ 0

LLVM 3.4 正式发布!

LLVM 3.4 已经释出,二进制下载已经准备就绪。 官方的邮件列表和首页,已经更新了3.4。 小伙伴还可以通过SVN方式或者GIT方式fork release分支的源码哦。 本次更新的邮件列表的原文如下: LL...

windyland ⋅ 2014/01/06 ⋅ 24

Android Studio 2.0 发布

Android Studio 2.0 发布了。 Android Studio 2.0是为Android平台打造高品质,高性能的应用程序的最快方式,包括手机、平板电脑,Android Auto,Android Wear和Android TV。作为谷歌官方的I...

oschina ⋅ 2016/04/08 ⋅ 74

【MyBatis】学习纪要十一:逆向工程

写在前面的话 前面学习MyBatis的运行原理,刚学完,回头想想还是非常复杂的,也因为之前没有这样去分析过源码,所以这一节算是卡住了,可能会花一定的时间,为了不卡住学习进度,所以我们继续...

Wenyi_Feng ⋅ 05/10 ⋅ 0

IntelliJ IDEA 2016.2 发布

IntelliJ IDEA 2016.2 发布了。IntelliJ IDEA被认为是当前Java开发效率最快的IDE工具。它整合了开发过程中实用的众多功能,几乎可以不用鼠标可以方便的完成你要做的任何事情,最大程度的加快...

淡漠悠然 ⋅ 2016/07/13 ⋅ 32

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Docker Swarm的前世今生

概述 在我的《Docker Swarm集群初探》一文中,我们实际体验了Docker Swarm容器集群技术的魅力,与《Kubernetes实践录》一文中提到的Kubernetes集群技术相比,Docker Swarm没有Kubernetes显得...

CodeSheep ⋅ 今天 ⋅ 0

骰子游戏代码开源地址

因为阿里云现在服务器已经停用了,所以上面的配置已经失效。 服务端开源地址:https://gitee.com/goalya/chat4.git 客户端开源地址:https://gitee.com/goalya/client4.git 具体运行界面请参考...

算法之名 ⋅ 今天 ⋅ 0

设计模式--装饰者模式

装饰者模式 定义 动态地给一个对象添加一些额外的职责。就增加功能来说,装饰模式相比生成子类更为灵活。 通用类图 意图 动态地给一个对象添加一些额外的职责。就增加功能来说,装饰模式相比...

gaob2001 ⋅ 今天 ⋅ 0

JavaScript零基础入门——(八)JavaScript的数组

JavaScript零基础入门——(八)JavaScript的数组 欢迎大家回到我们的JavaScript零基础入门,上一节课我们讲了有关JavaScript正则表达式的相关知识点,便于大家更好的对字符串进行处理。这一...

JandenMa ⋅ 今天 ⋅ 0

sbt网络问题解决方案

转自:http://dblab.xmu.edu.cn/blog/maven-network-problem/ cd ~/.sbt/launchers/0.13.9unzip -q ./sbt-launch.jar 修改 vi sbt/sbt.boot.properties 增加一个oschina库地址: [reposit......

狐狸老侠 ⋅ 今天 ⋅ 0

大数据,必须掌握的10项顶级安全技术

我们看到越来越多的数据泄漏事故、勒索软件和其他类型的网络攻击,这使得安全成为一个热门话题。 去年,企业IT面临的威胁仍然处于非常高的水平,每天都会看到媒体报道大量数据泄漏事故和攻击...

p柯西 ⋅ 今天 ⋅ 0

Linux下安装配置Hadoop2.7.6

前提 安装jdk 下载 wget http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.7.6/hadoop-2.7.6.tar.gz 解压 配置 vim /etc/profile # 配置java环境变量 export JAVA_HOME=/opt/jdk1......

晨猫 ⋅ 今天 ⋅ 0

crontab工具介绍

crontab crontab 是一个用于设置周期性被执行的任务工具。 周期性执行的任务列表称为Cron Table crontab(选项)(参数) -e:编辑该用户的计时器设置; -l:列出该用户的计时器设置; -r:删除该...

Linux学习笔记 ⋅ 今天 ⋅ 0

深入Java多线程——Java内存模型深入(2)

5. final域的内存语义 5.1 final域的重排序规则 1.对于final域,编译器和处理器要遵守两个重排序规则: (1)在构造函数内对一个final域的写入,与随后把这个被构造对象的引用赋值给一个引用...

江左煤郎 ⋅ 今天 ⋅ 0

面试-正向代理和反向代理

面试-正向代理和反向代理 Nginx 是一个高性能的反向代理服务器,但同时也支持正向代理方式的配置。

秋日芒草 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部