mybatis逆向工程
2016-03-07 16:42
351 查看
运行逆向工程的方法:
From the command
prompt with an XML configuration
As an Ant
task with an XML configuration
As a Maven
Plugin
From another Java
program with an XML configuration
From another Java
program with a Java based configuration
通过eclipse插件生成代码
此处使用Java
program with an XML configuration方法生成代码
项目结构如图:
![](https://img-blog.csdn.net/20160307163239060)
第一步:配置log4j.properties
第二步:生成代码配置文件generatorConfig.xml
From the command
prompt with an XML configuration
As an Ant
task with an XML configuration
As a Maven
Plugin
From another Java
program with an XML configuration
From another Java
program with a Java based configuration
通过eclipse插件生成代码
此处使用Java
program with an XML configuration方法生成代码
项目结构如图:
第一步:配置log4j.properties
<span style="background-color: rgb(0, 0, 0);"></span><pre name="code" class="html">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=%d [%t] %-5p [%c] - %m%n log4j.logger.java.sql.ResultSet=INFO log4j.logger.org.apache=INFO log4j.logger.java.sql.Connection=DEBUG log4j.logger.java.sql.Statement=DEBUG log4j.logger.java.sql.PreparedStatement=DEBUG
第二步:生成代码配置文件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> <context id="testTables" targetRuntime="MyBatis3"> <commentGenerator> <!-- 是否去除自动生成的注释 true:是 : false:否 --> <property name="suppressAllComments" value="true" /> </commentGenerator> <!--数据库连接的信息:驱动类、连接地址、用户名、密码 --> <span style="color:#ff0000;"><jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/test?characterEncoding=utf-8" userId="root" password="yql"></span> </jdbcConnection> <!-- <jdbcConnection driverClass="oracle.jdbc.OracleDriver" connectionURL="jdbc:oracle:thin:@127.0.0.1:1521:yycg" userId="yycg" password="yycg"> </jdbcConnection> --> <!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL 和 NUMERIC 类型解析为java.math.BigDecimal --> <javaTypeResolver> <property name="forceBigDecimals" value="false" /> </javaTypeResolver> <!-- targetProject:<span style="color:#ff0000;">生成PO类的位置 </span>--> <javaModelGenerator targetPackage="cn.itcast.ssm.po" targetProject=".\src"> <!-- enableSubPackages:是否让schema作为包的后缀 --> <property name="enableSubPackages" value="false" /> <!-- 从数据库返回的值被清理前后的空格 --> <property name="trimStrings" value="true" /> </javaModelGenerator> <!-- targetProject:<span style="color:#ff0000;">mapper映射文件生成的位置 </span>--> <sqlMapGenerator targetPackage="cn.itcast.ssm.mapper" targetProject=".\src"> <!-- enableSubPackages:是否让schema作为包的后缀 --> <property name="enableSubPackages" value="false" /> </sqlMapGenerator> <!-- targetPackage:<span style="color:#ff0000;">mapper接口生成的位置 </span>--> <javaClientGenerator type="XMLMAPPER" targetPackage="cn.itcast.ssm.mapper" targetProject=".\src"> <!-- enableSubPackages:是否让schema作为包的后缀 --> <property name="enableSubPackages" value="false" /> </javaClientGenerator> <!-- <span style="color:#ff0000;">指定数据库表</span> --> <table tableName="items"></table> <table tableName="orders"></table> <table tableName="orderdetail"></table> <table tableName="user"></table> <!-- <table schema="" tableName="sys_user"></table> <table schema="" tableName="sys_role"></table> <table schema="" tableName="sys_permission"></table> <table schema="" tableName="sys_user_role"></table> <table schema="" tableName="sys_role_permission"></table> --> <!-- 有些表的字段需要指定java类型 <table schema="" tableName=""> <columnOverride column="" javaType="" /> </table> --> </context> </generatorConfiguration><span style="color:#ff0000;"> </span>第三步:执行生成程序
<span style="color:#ff0000;"> </span>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 GeneratorSqlmap { public void generator() throws Exception{ List<String> warnings = new ArrayList<String>(); boolean overwrite = true; //指定 逆向工程配置文件 File configFile = new File("generatorConfig.xml"); ConfigurationParser cp = new ConfigurationParser(warnings); Configuration config = cp.parseConfiguration(configFile); DefaultShellCallback callbac 4000 k = new DefaultShellCallback(overwrite); MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings); myBatisGenerator.generate(null); } public static void main(String[] args) throws Exception { try { GeneratorSqlmap generatorSqlmap = new GeneratorSqlmap(); generatorSqlmap.generator(); } catch (Exception e) { e.printStackTrace(); } } }
相关文章推荐
- IOS的WebView请求远程html并加载本地资源
- Linux下route add 命令添加路由列表
- Linux C函数之文件及目录函数(全)
- 获取当前时间是今年的第几天
- 什么情况使用 weak 关键字,相比 assign 有什么不同?怎么用 copy 关键字?
- MyBatis 中 批量操作如查询
- 第二节--中值滤波VC++实现
- Android JSBridge的原理与实现
- 【设计模式】动态代理
- Oracle442个应用场景------------基础应用场景
- java,类的继承
- hdu 1028 Ignatius and the Princess III
- 为什么Android要增加Binder
- 从0到1
- 第一节--滤波操作的VC++实现
- Qt+VS2010 编译时QtAddin报错,exitcode为-1
- 在控制台查看CPUID的命令
- 详解JavaScript数组和字符串中去除重复值的方法
- PAZU 打印控件 无限制免费版
- [置顶] android开发之gridView的一些属性。(项目经验总结)