我采用的是一个Java程序生成代码,然后复制到自己的项目里边去......
相关依赖展示:
generator.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>
<!--当项目未加入驱动包的做法:数据库驱动
<classPathEntry location="F:\workspace\niuwa-p2ps\WebContent\WEB-INF\lib\mysql-connector-java-5.1.25.jar"/>
-->
<!-- defaultModelType属性用于设置产生的模型类型 -->
<context id="myBatis3" targetRuntime="MyBatis3" defaultModelType="flat">
<property name="mergeable" value="true" />
<property name="javaFileEncoding" value="UTF-8" />
<!-- 序列化model类 -->
<plugin type="org.mybatis.generator.plugins.SerializablePlugin"></plugin>
<commentGenerator>
<property name="suppressDate" value="true"/>
<!-- 是否去除自动注释 -->
<property name="suppressAllComments" value="false"/>
</commentGenerator>
<!--数据库链接地址账号密码-->
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="database_url" userId="username" password="password">
</jdbcConnection>
<!-- 默认false, 把JDBC DECIMA 和NUMERIC 类型解析为Integer, 为true时,将其解析为java.math.Bigdecimal -->
<javaTypeResolver>
<property name="forceBigDecimals" value="false"/>
</javaTypeResolver>
<!--生成Model类存放位置-->
<javaModelGenerator targetPackage="实体包路经" targetProject="src">
<!-- 是否让schema作为包的后缀 -->
<property name="enableSubPackages" value="false"/>
<!-- 从数据库返回的值 清理掉前后的空格 -->
<property name="trimStrings" value="true"/>
</javaModelGenerator>
<!--生成mapper映射文件存放位置-->
<sqlMapGenerator targetPackage="映射文件包路径" targetProject="src">
<property name="enableSubPackages" value="false"/>
</sqlMapGenerator>
<!--生成Dao类存放位置-->
<javaClientGenerator type="XMLMAPPER" targetPackage="Dao包路径"
targetProject="src">
<property name="enableSubPackages" value="false"/>
</javaClientGenerator>
<!--生成对应表及类名,后面的配置:是否自动生成 *Example 类-->
<table tableName="表名" enableCountByExample="false"
enableUpdateByExample="false" enableDeleteByExample="false"
enableSelectByExample="false" selectByExampleQueryId="false">
</table>
<!-- 生成全部的表 -->
<!-- <table tableName="%"></table> -->
</context>
</generatorConfiguration>
log4j.properties配置文件:
# Log4j properties
log4j.rootLogger=DEBUG, Console
#Console
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%-5p - %m%n
log4j.logger.org.apache=INFO
log4j.logger.java.sql.ResultSet=INFO
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PrepareStatement=DEBUG
Gernerator .java文件
public class Gernerator {
public static void main(String[] args) throws Exception {
List<String> warnings = new ArrayList<>();
ConfigurationParser cp = new ConfigurationParser(warnings);
Configuration config = cp.parseConfiguration(new File("src/generator.xml"));
// Configuration config = cp.parseConfiguration(ClassLoader.getSystemResourceAsStream("mybatis-generator.xml"));
DefaultShellCallback callback = new DefaultShellCallback(true);
MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
myBatisGenerator.generate(null);
for (String warning : warnings) {
System.out.println(warning);
}
System.out.println("代码生成完毕");
}
}
将上述文件需要的配置信息替换成自己的信息就好了,启动就能在对应的目录下面生成了。