一、核心文件generator.xml
指定数据库jar包位置、数据库连接信息、生成包的位置、表名等关键信息。该文件放在任意位置。
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
|
<!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd" > <generatorConfiguration> <!-- 数据库的JDBC驱动的jar包地址 --> <classPathEntry location= "F:\xy\jars\mysql-connector-java-5.0.7-bin.jar" /> <context id= "DB2Tables" targetRuntime= "MyBatis3" > <!-- 是否去除自动生成的注释 --> <commentGenerator> <property name= "suppressAllComments" value= "true" /> </commentGenerator> <!-- 数据库连接的信息 --> <jdbcConnection driverClass= "com.mysql.jdbc.Driver" connectionURL= "jdbc:mysql://localhost:3306/db_MybatisTest" userId= "root" password= "mysqltest" > </jdbcConnection> <!-- false :JDBC DECIMAL、NUMERIC类型解析为Integer,默认方式 --> <!-- true : JDBC DECIMAL、NUMERIC类型解析为java.math.BigDecimal --> <javaTypeResolver> <property name= "forceBigDecimals" value= "false" /> </javaTypeResolver> <!-- 生成模型的包名和位置 --> <javaModelGenerator targetPackage= "com.xy.model" targetProject= "F:\xy\mybatis-generator\src" > <!-- 是否让schema作为包的后缀 --> <property name= "enableSubPackages" value= "true" /> <!-- 从数据库返回的值被清理前后的空格 --> <property name= "trimStrings" value= "true" /> </javaModelGenerator> <!-- 生成映射文件的包名和位置 --> <sqlMapGenerator targetPackage= "com.xy.mapping" targetProject= "F:\xy\mybatis-generator\src" > <property name= "enableSubPackages" value= "false" /> </sqlMapGenerator> <!-- 生成DAO的包名和位置 --> <javaClientGenerator type= "XMLMAPPER" targetPackage= "com.xy.dao" targetProject= "F:\xy\mybatis-generator\src" > <property name= "enableSubPackages" value= "true" /> </javaClientGenerator> <!-- tableName:数据库表 --> <!-- domainObjectName:对应于数据库表的javaBean类名 --> <table tableName= "t_student" domainObjectName= "Student" enableCountByExample= "false" enableUpdateByExample= "false" enableDeleteByExample= "false" enableSelectByExample= "false" selectByExampleQueryId= "false" > <!-- 忽略该字段(可省略) --> <ignoreColumn column= "name" /> </table> </context> </generatorConfiguration> |
二、table标签解析
①属性
schema即为数据库名,tableName为对应的数据库表,domainObjectName是要生成的实体类。
若要生成例子可将enableCountByExample等设为true, 就会生成一个对应domainObjectName的Example类,false则不生成,默认策略是true。
类似的还有enableUpdateByExample、enableDeleteByExample、enableSelectByExample、selectByExampleQueryId属性。
②子标签
若要对某些数据库字段进行操作,可以在table标签中加入如下标签
1、忽略某个字段
1
|
<ignoreColumn column= "name" /> |
2、无论数据库字段是何类型,生成的类属性都是varchar
1
|
<columnOverride column= "LONG_VARCHAR_FIELD" jdbcType= "VARCHAR" /> |
三、生成
mybatis-generator-core-1.3.2.jar是核心jar包,可在网上自行下载。命令窗口执行语句,执行成功后就会在generator.xml文件中指定的位置找到代码了。
1
|
java -jar F:\xy\jars\mybatis-generator-core- 1.3 . 2 .jar -configfile F:\xy\generator.xml -overwrite |
四、总结
使用Mybatis Generator需要
①两个jar包——mybatis-generator-core-1.3.2.jar和数据库jar包
②一个配置文件generator.xml
③执行语句
五、注意事项
①generator.xml格式:必须是以UTF-8无BOM格式编码,用notepad++转换。
②注意数据库包的可用性,无效的数据库包转换会报错。
以上所述是小编给大家介绍的Mybatis generator的使用全面解析,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:http://blog.csdn.net/woshixuye/article/details/29220123