mybatis的逆向工程自动生成代码
参考文献:https://blog.csdn.net/yerenyuan_pku/article/details/71909325
逆向工程:
MyBatis需要程序员自己编写sql,如果表太多的话,会很麻烦。所以mybatis官方提供了一个逆向工程,可以针对单表自动生成mybatis执行所需要的代码(包括mapper.xml、mapper.java、po..)。通过数据库的表生成代码,这个真的是很方便,感觉前几天看了那么久的mybatis整合的我有点傻。。
目录结构
导入需要的jar包:
mybatis-generator-core-1.3.5.jar
- 配置逆向工程的配置文件
mbg.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="DB2Tables" targetRuntime="MyBatis3"> <!-- 自动生成的代码中不要注释 --> <commentGenerator> <property name="suppressAllComments" value="true" /> </commentGenerator> <!-- 配置数据库连接 --> <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/test?serverTimezone=GMT%2B8" userId="root" password="mysql"> </jdbcConnection> <javaTypeResolver > <property name="forceBigDecimals" value="false" /> </javaTypeResolver> <!-- 指定javaBean生成的位置 --> <javaModelGenerator targetPackage="cn.cws6.bean" targetProject=".\src\main\java"> <property name="enableSubPackages" value="true" /> <property name="trimStrings" value="true" /> </javaModelGenerator> <!-- 指定sql映射文件生成的位置 --> <sqlMapGenerator targetPackage="mapper" targetProject=".\src\main\resources"> <property name="enableSubPackages" value="true" /> </sqlMapGenerator> <!-- 指定dao接口生成的位置,mapper接口 --> <javaClientGenerator type="XMLMAPPER" targetPackage="cn.cws6.dao" targetProject=".\src\main\java"> <property name="enableSubPackages" value="true" /> </javaClientGenerator> <!-- table指定每个表的生成策略 --> <table tableName="users" domainObjectName="users"></table> <table tableName="employee" domainObjectName="employee"></table> </context> </generatorConfiguration>
- 执行代码
MBGTest.java
package cn.cws6.test; import java.io.File; import java.io.IOException; import java.sql.SQLException; 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.InvalidConfigurationException; import org.mybatis.generator.exception.XMLParserException; import org.mybatis.generator.internal.DefaultShellCallback; public class MBGTest { public static void main(String[] args) throws IOException, XMLParserException, InvalidConfigurationException, SQLException, InterruptedException{ List<String> warnings = new ArrayList<String>(); boolean overwrite = true; File configFile = new File("mbg.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); } }
运行之后,刷新一下,会发现很多代码已经生成。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
mybatis开发Dao
参考文献:https://blog.csdn.net/u013036274/article/details/55668317 原始dao方式 需要写dao接口和dao实现类。 创建dao接口:UserDao.java package cn.itcast.mybatis.dao; import cn.itcast.mybatis.po.Employee; public interface UserDao { public Employee findUserById(int id) throws Exception; public void insertUser(Employee employee) throws Exception; public void deleteUser(int id) throws Exception; } 创建dao实现类:UserDaoImpl.java package cn.itcast.mybatis.dao; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.se...
- 下一篇
6月19日云栖精选夜读丨优酷世界杯高清直播背后,一场技术升级内容产业的浪潮
作为历史上首家拿下世界杯直播权的主流视频平台,优酷世界杯直播成功首秀的背后由优酷自研的“智能媒体大脑”、阿里云密集的CDN节点和巨量带宽储备支撑,实质上是一场围绕内容产业的技术升级浪潮。 热点热议 优酷世界杯高清直播背后,一场技术升级内容产业的浪潮 作者:优小酷 业界 | 复杂出行场景下,滴滴如何将AI融入地图系统 作者:技术小能手 发表在:大数据文摘 Science重磅:无需标注数据,DeepMind新研究让机器“脑补”立体世界! 作者: 技术小能手 发表在: 大数据文摘 知识整理 MySQL多线程并发调优 作者: zuozhao 发表在:阿里云存储服务 Nginx反向代理以及负载均衡配置 作者:超人归来007 MobPush推送实现解析 作者:皮皮酱ye 一小时神经网络从入门到精通(放弃) 作者:imhy Java并发编程笔记之ConcurrentLinkedQueue源码探究 作者:狂小白 美文回顾 日志服务支持Shard自动分裂 作者: suntingtao 发表在: 阿里云存储服务 Linux 7下MySQL自启动配置(glibc) 作者: leshami Docker S...
相关文章
文章评论
共有0条评论来说两句吧...