本文介绍一下用maven工具如何生成mybatis的代码及映射的文件。
一、配置maven pom.xml 文件
在pom.xml增加以下插件:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
<build> <finalname>zsxt</finalname> <plugins> <plugin> <groupid>org.mybatis.generator</groupid> <artifactid>mybatis-generator-maven-plugin</artifactid> <version> 1.3 . 2 </version> <configuration> <verbose> true </verbose> <overwrite> true </overwrite> </configuration> </plugin> </plugins> </build> |
配置好maven插件,下面需要配置插件需要配置文件
二、在maven项目下的src/main/resources 目录下建立名为maven的项目配置文件存放路径如下图:generatorconfig.xml和generator.properties配置文件,
maven的项目配置文件存放路径如下图:
generatorconfig.xml代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
<?xml version= "1.0" encoding= "utf-8" ?> <!doctype generatorconfiguration public "-//mybatis.org//dtd mybatis generator configuration 1.0//en" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd" > <generatorconfiguration> <!--导入属性配置--> <properties resource= "generator.properties" ></properties> <!--指定特定数据库的jdbc驱动jar包的位置--> <classpathentry location= "${jdbc.driverlocation}" /> <context id= "default" targetruntime= "mybatis3" > <!-- optional,旨在创建 class 时,对注释进行控制 --> <commentgenerator> <property name= "suppressdate" value= "true" /> <property name= "suppressallcomments" value= "true" /> </commentgenerator> <!--jdbc的数据库连接 --> <jdbcconnection driverclass= "${jdbc.driverclass}" connectionurl= "${jdbc.connectionurl}" userid= "${jdbc.userid}" password= "${jdbc.password}" > </jdbcconnection> <!-- 非必需,类型处理器,在数据库类型和java类型之间的转换控制--> <javatyperesolver> <property name= "forcebigdecimals" value= "false" /> </javatyperesolver> <!-- model模型生成器,用来生成含有主键key的类,记录类 以及查询example类 targetpackage 指定生成的model生成所在的包名 targetproject 指定在该项目下所在的路径 --> <javamodelgenerator targetpackage= "com.slx.zsxt.model" targetproject= "src/main/java" > <!-- 是否允许子包,即targetpackage.schemaname.tablename --> <property name= "enablesubpackages" value= "false" /> <!-- 是否对model添加 构造函数 --> <property name= "constructorbased" value= "true" /> <!-- 是否对类 char 类型的列的数据进行trim操作 --> <property name= "trimstrings" value= "true" /> <!-- 建立的model对象是否 不可改变 即生成的model对象不会有 setter方法,只有构造方法 --> <property name= "immutable" value= "false" /> </javamodelgenerator> <!--mapper映射文件生成所在的目录 为每一个数据库的表生成对应的sqlmap文件 --> <sqlmapgenerator targetpackage= "com.slx.zsxt.mapper" targetproject= "src/main/java" > <property name= "enablesubpackages" value= "false" /> </sqlmapgenerator> <!-- 客户端代码,生成易于使用的针对model对象和xml配置文件 的代码 type= "annotatedmapper" ,生成java model 和基于注解的mapper对象 type= "mixedmapper" ,生成基于注解的java model 和相应的mapper对象 type= "xmlmapper" ,生成sqlmap xml文件和独立的mapper接口 --> <javaclientgenerator targetpackage= "com.slx.zsxt.dao" targetproject= "src/main/java" type= "xmlmapper" > <property name= "enablesubpackages" value= "true" /> </javaclientgenerator> <table tablename= "reguser" domainobjectname= "user" enablecountbyexample= "false" enableupdatebyexample= "false" enabledeletebyexample= "false" enableselectbyexample= "false" selectbyexamplequeryid= "false" > </table> <table tablename= "adminuser" domainobjectname= "admin" enablecountbyexample= "false" enableupdatebyexample= "false" enabledeletebyexample= "false" enableselectbyexample= "false" selectbyexamplequeryid= "false" > </table> <table tablename= "configinfo" domainobjectname= "confinfo" enablecountbyexample= "false" enableupdatebyexample= "false" enabledeletebyexample= "false" enableselectbyexample= "false" selectbyexamplequeryid= "false" > </table> <table tablename= "grade" domainobjectname= "grade" enablecountbyexample= "false" enableupdatebyexample= "false" enabledeletebyexample= "false" enableselectbyexample= "false" selectbyexamplequeryid= "false" > </table> <table tablename= "gradelog" domainobjectname= "gradelog" enablecountbyexample= "false" enableupdatebyexample= "false" enabledeletebyexample= "false" enableselectbyexample= "false" selectbyexamplequeryid= "false" > </table> <table tablename= "reginfo" domainobjectname= "reginfo" enablecountbyexample= "false" enableupdatebyexample= "false" enabledeletebyexample= "false" enableselectbyexample= "false" selectbyexamplequeryid= "false" > </table> </context> </generatorconfiguration> |
generator.propertites代码如下:
1
2
3
4
5
|
jdbc.driverlocation=e:\\mvn_home\\mysql\\mysql-connector-java\\ 5.1 . 20 \\mysql-connector-java- 5.1 . 20 .jar jdbc.driverclass=com.mysql.jdbc.driver jdbc.connectionurl=jdbc:mysql: ///zsxt jdbc.userid=root jdbc.password= 123456 |
三、在intellij idea添加一个“run运行”选项,使用maven运行mybatis-generator-maven-plugin插件
点击 菜单run中edit configurations,会出现
点击+号,选择maven,会出现
在name和commond line分别填上如上图所示,apply和ok
最后点击generator,生成model,mapper,dao
逆向工程生成结果如下:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/for_my_life/article/details/51228098