发布于2021-05-29 19:28 阅读(1003) 评论(0) 点赞(25) 收藏(4)
我在写SSM项目(学校作业)的时候想使用这个,网上找了一圈,最后总结一下。
有些教程要自己导mybatis generator的包,还要自己配路径,我觉得毕竟都有maven了,手动设置包路径真的吃力不讨好,这里使用maven导入。
更多详细内容请参照官方文档。
官方文档 传送门(点我)
CREATE TABLE `user`
(
`username` varchar(30) NOT NULL,
`password` varchar(30) DEFAULT NULL,
PRIMARY KEY (`username`)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8;
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.5</version>
<dependencies>
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.5</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.13</version>
</dependency>
</dependencies>
<executions>
<execution>
<id>mybatis generator</id>
<phase>package</phase>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<!--允许移动生成的文件-->
<verbose>true</verbose>
<!--允许自动覆盖文件-->
<overwrite>true</overwrite>
<configurationFile>
src/main/resources/generatorConfig.xml
</configurationFile>
</configuration>
</execution>
</executions>
</plugin>
对于配置文件需要修改的地方我用中文标出
数据库连接配置最好写死在这里面,因为我之前想复用之前的database.properties,引入的方式有时候总是莫名其妙的找不到。(应该是我菜)
注意:Mysql8之后的驱动路径为
com.mysql.cj.jdbc.Driver
Mysql8以前的驱动路径为
com.mysql.jdbc.Driver
<?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="default" targetRuntime="MyBatis3">
<commentGenerator>
<!-- 是否去除自动生成的注释 true:是 : false:否 -->
<property name="suppressAllComments" value="true" />
</commentGenerator>
<!--jdbc的数据库连接-->
<jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/ssm?characterEncoding=utf8&useSSL=false&serverTimezone=UTC&rewriteBatchedStatements=true "
userId="账号"
password="密码">
<property name="nullCatalogMeansCurrent" value="true" />
</jdbcConnection>
<!-- 实体类存放位置 -->
<javaModelGenerator targetPackage="com.修改这里.pojo"
targetProject=".\src\main\java">
<!-- 是否允许子包 -->
<property name="enableSubPackages" value="false"/>
<!-- 是否对modal添加构造函数 -->
<property name="constructorBased" value="true"/>
<!-- 是否清理从数据库中查询出的字符串左右两边的空白字符 -->
<property name="trimStrings" value="true"/>
<!-- 建立modal对象是否不可改变 即生成的modal对象不会有setter方法,只有构造方法 -->
<property name="immutable" value="false"/>
</javaModelGenerator>
<!-- targetPackage 和 targetProject:生成的 mapper 文件的包和位置 -->
<sqlMapGenerator targetPackage="mapper"
targetProject=".\src\main\resources">
</sqlMapGenerator>
<!-- 生成的接口位置-->
<javaClientGenerator type="XMLMAPPER"
targetPackage="com.tanqi.dao" targetProject=".\src\main\java">
</javaClientGenerator>
<!--生成对应表及类名-->
<table tableName="user" domainObjectName="User">
</table>
</context>
</generatorConfiguration>
双击即可
对于生成的结果
对于UserMapper、User、UserMapper.xml这几个是很熟悉了
当然,如果不想要生成UserExample
只需要修改 generatorConfig.xml 即可
<context id="default" targetRuntime="MyBatis3Simple">
那么这个UserExample是用来干嘛的呢?
简单来说,Example类包含一个内部静态类 Criteria,利用Criteria我们可以在类中根据自己的需求动态生成sql where字句,不用我们自己再修改mapper文件添加或者修改sql语句了,能节省很多写sql的时间。
简单使用 传送门(点我)
如果想看详细的解释和用法,请参考官方文档 传送门(点我)
作者:以天使的名义
链接:http://www.javaheidong.com/blog/article/207196/016f42ab0e9ad924e60c/
来源:java黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 java黑洞网 All Rights Reserved 版权所有,并保留所有权利。京ICP备18063182号-2
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!