使用org.mybatis.generator逆向工程生成model和mapper
1、引入MyBatis逆向工程的依赖
<!--scope:生效的范围(test:项目的此目录下才会生效) optional:依赖继承性-->
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<scope>test</scope>
<version>1.3.2</version>
<optional>true</optional>
</dependency>
<!--mybatis.generator依赖的包-->
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.6</version>
<scope>test</scope>
</dependency>
2、引入插件代码,放置位置如下位置

# 工程项目和插件代码
链接:https://pan.baidu.com/s/1tuPJADIXoOCXaiLAdqf9pg 密码:grjr
注意::plugins文件夹下面的代码不用动,这是写好的插件代码。只需要修改generatorConfig.xml中的代码即可
3、配置generatorConfig.xml代码如下地方即可
<!--1、配置需要执行的数据库-->
<jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/mybatisconverse?autoReconnect=true&useUnicode=true&characterEncoding=UTF8&useSSL=false&serverTimezone=Asia/Shanghai&zeroDateTimeBehavior=convertToNull"
userId="root" password="loujianwei" />
<!-- 2、配置数据库表对应model生成的地方 -->
<javaModelGenerator targetPackage="com.mybatis.ljw.converse.domain"
targetProject="./src/main/java">
<property name="enableSubPackages" value="true" />
<property name="trimStrings" value="false" />
</javaModelGenerator>
<!-- 3、配置数据库对应的mapper生成的地方 -->
<javaClientGenerator type="ANNOTATEDMAPPER"
targetPackage="com.mybatis.ljw.converse.mapper"
targetProject="./src/main/java">
<property name="enableSubPackages" value="true" />
</javaClientGenerator>
<!--3、配置哪个表需要生成-->
<table tableName="user">
<generatedKey column="id" sqlStatement="JDBC"/>
</table>
<table tableName="product">
<generatedKey column="id" sqlStatement="JDBC"/>
</table>
4、配置好后,运行插件中的Generator代码中的main方法。则生成如下内容

注意:: 生成的mapper文件中,需要手动添加@Mapper注解
5、项目使用
@Autowired
private UserMapper userMapper;
public List<User> users() {
UserExample userExample = new UserExample();
return userMapper.selectByExample(userExample);
}
public List<User> userPhone() {
UserExample userExample = new UserExample();
userExample.createCriteria().andPhoneEqualTo("123456");
return userMapper.selectByExample(userExample);
}
网友评论