mybatis通用mapper的整合使用
阿新 • • 發佈:2020-08-13
作用:可以將單表的增刪改查操作省去
一、新增依賴
<!--mybatis通用mapper的依賴--> <dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper-spring-boot-starter</artifactId> <version>1.2.3</version> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </exclusion> </exclusions> </dependency>
二、讓mapper介面繼承Mapper<T>介面
注意:是該包的Mapper介面(package tk.mybatis.mapper.common),其泛型是對應的實體類
package com.atguigu.gmall.user.mapper; import com.atguigu.gmall.user.domain.Users; import tk.mybatis.mapper.common.Mapper; import java.util.List; public interface UserMapper extends Mapper<Users> {
//無需寫方法,直接在service實現類呼叫方法 }
三、在實現類呼叫方法
package com.atguigu.gmall.user.service.impl; import com.atguigu.gmall.user.domain.Users; import com.atguigu.gmall.user.mapper.UserMapper; import com.atguigu.gmall.user.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; @Service public class UserServiceImpl implements UserService { @Autowired UserMapper userMapper; public List<Users> getAllUser(){ //該selectAll方法是通用mapper制定好的,直接呼叫。其中還有好多方法 List<Users> userList = userMapper.selectAll(); return userList; } }
四、在實體類中添加註解如下
@Id指定主鍵
@GenneratedValue(strategy=GennerationType.IDENTITY)指定主鍵返回策略
package com.atguigu.gmall.user.domain; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; public class Users { @Id//指定主鍵 @GeneratedValue(strategy = GenerationType.IDENTITY)//指定主鍵返回策略 private Integer id; private String name; private String sex; private String address; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } @Override public String toString() { return "User{" + "id=" + id + ", name='" + name + '\'' + ", sex='" + sex + '\'' + ", address='" + address + '\'' + '}'; } }
五、在啟動類上配置通用mapper的掃描器
@MapperScan(basePackages="com.atguigu.gmall.user.mapper")注意是該包下的(tk.mybatis.spring.annotation.MapperScan)
package com.atguigu.gmall.user; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import tk.mybatis.spring.annotation.MapperScan; @SpringBootApplication //@MapperScan(basePackages = "com.atguigu.gmall.user.mapper") @MapperScan(basePackages = "com.atguigu.gmall.user.mapper") public class GmallUser01Application { public static void main(String[] args) { SpringApplication.run(GmallUser01Application.class, args); } }