网站建设资讯

NEWS

网站建设资讯

SpringBoot整合MyBatis逆向工程及MyBatis通用Mapper实例详解

一、添加所需依赖,当前完整的pom文件如下:

平桥网站制作公司哪家好,找创新互联!从网页设计、网站建设、微信开发、APP开发、响应式网站建设等网站项目制作,到程序开发,运营维护。创新互联成立与2013年到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联


 4.0.0
 
  org.springframework.boot
  spring-boot-starter-parent
  1.5.6.RELEASE
 
 org.rcddup
 rcddup-custom
 1.0.0
 
  1.8
  1.3.1
  3.4.3
  1.3.3
  1.1.4
  1.2.1
 
 
  
  
   org.springframework.boot
   spring-boot-starter-web
  
  
  
   org.mybatis.spring.boot
   mybatis-spring-boot-starter
   ${mybatis.version}
  
  
  
   org.mybatis.generator
   mybatis-generator-core
   ${mybatis-generator.version}
  
  
  
   tk.mybatis
   mapper-spring-boot-starter
   ${mybatis-tk.version}
  
  
  
   mysql
   mysql-connector-java
  
 
 
  
   
   
    org.mybatis.generator
    mybatis-generator-maven-plugin
    ${mybatis.generator.version}
    
     
      mysql
      mysql-connector-java
      ${mysql.version}
     
     
      tk.mybatis
      mapper
      ${mapper.version}
     
    
    
     
     true
     
     true
     
     
      ${basedir}/src/main/resources/generator/generatorConfig.xml
     
    
   
  
 

MyBtais 结合通用 Mapper 非常好使,接下来看逆向工程的配置。

有关通用Mapper的信息,请查看:https://github.com/abel533/Mapper

二、generatorConfig.xml

<?xml version="1.0" encoding="UTF-8"?>


 
 
 
 
  
  
  
  
   
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  

我们将对应的信息都在 application.properties 中定义好,在这直接使用,application.properties如下:

# Generator
generator.targetProject=src/main/java
generator.mappers=org.rcddup.app.common.base.IBaseMapper
generator.javaModel-targetPackage=org.rcddup.app.domain
generator.sqlMap-targetPackage=org.rcddup.app.dao
generator.javaClient-targetPackage=org.rcddup.app.dao

三、编写生成Mapper的集成接口IBaseMapper

package org.rcddup.app.common.base;
import tk.mybatis.mapper.common.Mapper;
import tk.mybatis.mapper.common.MySqlMapper;
public interface IBaseMapper extends Mapper, MySqlMapper {
}

集成的 Mapper 以及 MySqlMapper 几乎包含了你所有的 CRUD方法。

四、使用逆向工程生成我们的第一个文件

右键项目 --> Maven --> Maven build --> Goals: mybtais-generator:generate,点击 run.....

SpringBoot整合MyBatis逆向工程及 MyBatis通用Mapper实例详解

我们的UserMapper以及UserMapper.xml就生成了。

(1)UserMapper.java

package org.rcddup.app.dao;
import org.rcddup.app.common.base.IBaseMapper;
import org.rcddup.app.domain.User;
public interface UserMapper extends IBaseMapper {
}

(2)UserMapper.xml

<?xml version="1.0" encoding="UTF-8"?>


 
 
 
 
 
 
 

是不是发现xml中都没有配置任何CRUD方法。

五、重新编写 UserService.java

SpringBoot整合MyBatis逆向工程及 MyBatis通用Mapper实例详解

我们原先编写的 UserService 现在我们用新生成的 UserMapper 来重新编写。

package org.rcddup.app.service.impl;
import java.util.List;
import org.rcddup.app.dao.UserMapper;
import org.rcddup.app.domain.User;
import org.rcddup.app.service.IUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import tk.mybatis.mapper.entity.Example;
@Service
public class UserService implements IUserService{
 @Autowired
 private UserMapper userMapper;
 @Override
 public List listUser() {
  return userMapper.selectAll();
 }
 @Override
 public User getUserById(Long id) {
  // 方法一:适用于任何字段的查询
//  Example example = new Example(User.class);
//  example.createCriteria().andEqualTo("id", id);
//  List list = userMapper.selectByExample(example);
//  if (list != null && list.size() > 0) {
//   return list.get(0);
//  } else {
//   return null;
//  }
  // 方法二:只适用于主键字段
  return userMapper.selectByPrimaryKey(id);
 }
}

六、启动 App.java

输入:localhost:8080/user/get?id=1

SpringBoot整合MyBatis逆向工程及 MyBatis通用Mapper实例详解

输入:localhost:8080/user/list

SpringBoot整合MyBatis逆向工程及 MyBatis通用Mapper实例详解

好了,到这我们整合了Mybatis逆向工程以及通用Mapper。

总结

以上所述是小编给大家介绍的SpringBoot整合MyBatis逆向工程及 MyBatis通用Mapper实例详解 ,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!


文章名称:SpringBoot整合MyBatis逆向工程及MyBatis通用Mapper实例详解
文章分享:http://njwzjz.com/article/psepce.html