Mybits 逆向工程
来源:互联网 发布:淘宝手机架 编辑:程序博客网 时间:2024/06/06 00:35
Mybatis的逆向工程是根据数据库表生成XXXmapper,XXXmapper.xml,entity类的步骤,下面详细示例:
1.创建数据库表
CREATE TABLE `orders` ( `id` int(11) NOT NULL AUTO_INCREMENT, `user_id` int(11) NOT NULL COMMENT '下单用户id', `number` varchar(32) NOT NULL COMMENT '订单号', `createtime` datetime NOT NULL COMMENT '创建订单时间', `note` varchar(100) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`), KEY `FK_orders_1` (`user_id`), CONSTRAINT `FK_orders_id` FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(32) NOT NULL COMMENT '用户名称', `birthday` date DEFAULT NULL COMMENT '生日', `sex` char(1) DEFAULT NULL COMMENT '性别', `address` varchar(256) DEFAULT NULL COMMENT '地址', PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=utf8;
2.导入相关jia包:
log4j-1.2.16.jarmybatis-3.2.3.jarmybatis-generator-core-1.3.2-javadoc.jarmybatis-generator-core-1.3.2-sources.jarmybatis-generator-core-1.3.2.jarmysql-connector-java-5.1.28-bin.jar
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> <!-- 复杂版:有辅助查询类 <context id="testTables" targetRuntime="MyBatis3"> --> <!-- 简单版:不想要Example等内容 <context id="Mysql" targetRuntime="MyBatis3Simple" defaultModelType="flat"> --> <context id="Mysql" targetRuntime="MyBatis3Simple" defaultModelType="flat"> <commentGenerator> <!-- 是否去除自动生成的注释 true:是 : false:否 --> <property name="suppressAllComments" value="true" /> </commentGenerator> <!--数据库连接的信息:驱动类、连接地址、用户名、密码 --> <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/Mybatis1" userId="root" password="123456"> </jdbcConnection> <!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL 和 NUMERIC 类型解析为java.math.BigDecimal --> <javaTypeResolver> <property name="forceBigDecimals" value="false" /> </javaTypeResolver> <!-- targetProject:生成Entity类的路径 --> <javaModelGenerator targetProject=".\src" targetPackage="com.atguigu.mybatis.entities"> <!-- enableSubPackages:是否让schema作为包的后缀 --> <property name="enableSubPackages" value="false" /> <!-- 从数据库返回的值被清理前后的空格 --> <property name="trimStrings" value="true" /> </javaModelGenerator> <!-- targetProject:XXXMapper.xml映射文件生成的路径 --> <sqlMapGenerator targetProject=".\src" targetPackage="com.atguigu.mybatis.mapper"> <!-- enableSubPackages:是否让schema作为包的后缀 --> <property name="enableSubPackages" value="false" /> </sqlMapGenerator> <!-- targetPackage:Mapper接口生成的位置 --> <javaClientGenerator type="XMLMAPPER" targetProject=".\src" targetPackage="com.atguigu.mybatis.mapper"> <!-- enableSubPackages:是否让schema作为包的后缀 --> <property name="enableSubPackages" value="false" /> </javaClientGenerator> <!-- 数据库表名字和我们的entity类对应的映射指定 --> <table tableName="orders" domainObjectName="Orders"/> <table tableName="user" domainObjectName="User"/> <!-- 有些表的字段需要指定java类型 <table schema="" tableName=""> <columnOverride column="" javaType="" /> </table> --> </context></generatorConfiguration>
4.配置log4j.properties:
log4j.rootLogger= DEBUG, Console#Consolelog4j.appender.Console= org.apache.log4j.ConsoleAppenderlog4j.appender.Console.layout= org.apache.log4j.PatternLayoutlog4j.appender.Console.layout.ConversionPattern= %d [%t] %-5p [%c] - %m%nlog4j.logger.java.sql.ResultSet= INFOlog4j.logger.org.apache= INFOlog4j.logger.java.sql.Connection= DEBUGlog4j.logger.java.sql.Statement= DEBUGlog4j.logger.java.sql.PreparedStatement= DEBUG
5.在逆向工程的工具方法中(官方文档直接拷贝即可):
public class Mbg_GeneratorUtil{ 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 callback = new DefaultShellCallback(overwrite); MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config,callback, warnings); myBatisGenerator.generate(null); } public static void main(String[] args) throws Exception { try { new Mbg_GeneratorUtil().generator(); } catch (Exception e) { e.printStackTrace(); } }}
6.上面的配置完成之后运行刷新即可自动完成XXXmapper,XXXmapper.xml,entity的类和对应的方法。
阅读全文
0 0
- Mybits 逆向工程
- 逆向工程
- 逆向工程
- 逆向工程
- 逆向工程
- 逆向工程
- 逆向工程
- 逆向工程
- 逆向工程
- 逆向工程
- 正向工程与逆向工程
- 正向工程和逆向工程
- 为何注重逆向工程?
- 逆向RING0工程
- MFC的逆向工程
- 神泣逆向工程
- Reversing:逆向工程揭密
- powerdesigner 逆向工程图片
- Mybatis 动态SQL
- TCP_Wrappers实现访问控制
- python学习笔记
- NOIP2017金秋冲刺训练营杯联赛模拟大奖赛 游记
- VisualSFM的不足
- Mybits 逆向工程
- 虚拟机安装centos7上网设置总结
- 设计模式(Design Patterns)
- table加到JScrollPane不能变大小 问题
- Chrome58以上版本Goagent访问google显示不安全使用问题解决
- vim常用快捷键总结
- PAT甲级 1132. Cut Integer (20)
- matplotlib绘制条形图
- 题3