引用:http://blog.csdn.net/p793049488/article/details/40422975
1、需要手動建表,如T_PRI_USER
2、新建配置文件generator.properties:
- #工程src路徑
- project = E\:/java/eclipseVillage/icity-yuntv/src
- #工程存放mapper.xml路徑
- resource = E\:/java/eclipseVillage/icity-yuntv/resource
- #指定數據連接驅動jar地址
- classPath=E:/java/eclipseVillage/icity-yuntv/WebRoot/WEB-INF/lib/mysql-connector-java-5.1.11-bin.jar
- jdbc_driver = com.mysql.jdbc.Driver
- jdbc_url=jdbc:mysql://192.168.22.20:3306/icity_yuntv?characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull
- jdbc_user=root
- jdbc_password=ffcsadmin
3、新建配置文件generatorConfig.xml:
- <?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"/>
- <!-- 指定數據連接驅動jar地址 -->
- <classPathEntry location="${classPath}" />
- <!-- 一個數據庫一個context -->
- <context id="infoGuardian" targetRuntime="MyBatis3">
- <!-- 注釋 -->
- <commentGenerator >
- <property name="suppressAllComments" value="true"/><!-- 是否取消注釋 -->
- <property name="suppressDate" value="true" /> <!-- 是否生成注釋代時間戳-->
- </commentGenerator>
- <!-- jdbc連接 -->
- <jdbcConnection driverClass="${jdbc_driver}"
- connectionURL="${jdbc_url}" userId="${jdbc_user}"
- password="${jdbc_password}" />
- <!-- 類型轉換 -->
- <javaTypeResolver>
- <!-- 是否使用bigDecimal, false可自動轉化以下類型(Long, Integer, Short, etc.) -->
- <property name="forceBigDecimals" value="false"/>
- </javaTypeResolver>
- <!-- 生成實體類地址 -->
- <javaModelGenerator targetPackage="cn.ffcs.yuntv.domain"
- targetProject="${project}" >
- <!-- 是否在當前路徑下新加一層schema,eg:fase路徑cn.ffcs.test.domain", true:cn.ffcs.test.domain".[schemaName] -->
- <property name="enableSubPackages" value="false"/>
- <!-- 是否針對string類型的字段在set的時候進行trim調用 -->
- <property name="trimStrings" value="true"/>
- </javaModelGenerator>
- <!-- 生成mapxml文件 -->
- <sqlMapGenerator targetPackage="mybatis"
- targetProject="${resource}" >
- <!-- 是否在當前路徑下新加一層schema,eg:fase路徑cn.ffcs.test.domain", true:cn.ffcs.test.domain".[schemaName] -->
- <property name="enableSubPackages" value="false" />
- </sqlMapGenerator>
- <!-- 生成mapxml對應client,也就是接口dao -->
- <javaClientGenerator targetPackage="cn.ffcs.yuntv.dao"
- targetProject="${project}" type="XMLMAPPER" >
- <!-- 是否在當前路徑下新加一層schema,eg:fase路徑cn.ffcs.test.domain", true:cn.ffcs.test.domain".[schemaName] -->
- <property name="enableSubPackages" value="false" />
- </javaClientGenerator>
- <!-- 配置表信息,這里沒生成一張表,這里需要改變一次對應表名 -->
- <table schema="icity_yuntv" tableName="T_USER_ADDR"
- domainObjectName="UserAddr" enableCountByExample="false"
- enableDeleteByExample="false" enableSelectByExample="false"
- enableUpdateByExample="false">
- <!-- schema即為數據庫名 tableName為對應的數據庫表 domainObjectName是要生成的實體類 enable*ByExample
- 是否生成 example類 -->
- <!-- 忽略列,不生成bean 字段
- <ignoreColumn column="FRED" />-->
- <!-- 指定列的java數據類型
- <columnOverride column="LONG_VARCHAR_FIELD" jdbcType="VARCHAR" />-->
- </table>
- </context>
- </generatorConfiguration>
4、新建主類:
- import java.io.File;
- import java.io.IOException;
- import java.util.ArrayList;
- import java.util.List;
- import org.mybatis.generator.api.MyBatisGenerator;
- import org.mybatis.generator.config.Configuration;
- import org.mybatis.generator.config.xml.ConfigurationParser;
- import org.mybatis.generator.exception.XMLParserException;
- import org.mybatis.generator.internal.DefaultShellCallback;
- public class GeneratorMain {
- public static void main(String[] args) {
- List<String> warnings = new ArrayList<String>();
- boolean overwrite = true;
- //讀取配置文件
- File configFile = new File("src/generatorConfig.xml");
- ConfigurationParser cp = new ConfigurationParser(warnings);
- Configuration config;
- try {
- config = cp.parseConfiguration(configFile);
- DefaultShellCallback callback = new DefaultShellCallback(overwrite);
- MyBatisGenerator myBatisGenerator;
- try {
- myBatisGenerator = new MyBatisGenerator(config, callback,
- warnings);
- myBatisGenerator.generate(null);
- //打印結果
- for(String str : warnings){
- System.out.println(str);
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- } catch (IOException e) {
- e.printStackTrace();
- } catch (XMLParserException e) {
- e.printStackTrace();
- }
- }
- }
5、導入jar包:
MySQL-connector-Java-5.1.11-bin.jar.jar 下載地址;http://download.csdn.net/detail/p793049488/8087305