您的位置 首页 java

springboot整合tkmybatis(通用mapper)

tk mybatis 是什么?

tkmybatis是为了简化mybatis单表的增删改查而诞生的,极其方便的使用MyBatis单表的增删改查,在使用mybatis单表增删改查时,可以直接调用tkmybatis中提供的方法直接调用而不用写xml配置文件。支持单表操作,不支持通用的多表联合查询。

Springboot整合tkmybatis

pom .xml:

<dependencies>
 <!-- springboot -->
 <dependency>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-starter-web</artifactId>
 </dependency>
 <dependency>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-devtools</artifactId>
 <scope> runtime </scope>
 <optional>true</optional>
 </dependency>
 <dependency>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-starter-test</artifactId>
 <scope>test</scope>
 </dependency>
 
 <!-- tkmybatis -->
 <dependency>
 <groupId>tk.mybatis</groupId>
 <artifactId>mapper</artifactId>
 <version>4.1.5</version>
 </dependency>
 <dependency>
 <groupId>tk.mybatis</groupId>
 <artifactId>mapper-spring-boot-starter</artifactId>
 <version>2.1.5</version>
 </dependency>
 
 <!-- mysql -->
 <dependency>
 <groupId>mysql</groupId>
 <artifactId>mysql-connector-java</artifactId>
 <scope>runtime</scope>
 </dependency>
 
 <!-- lombok -->
 <dependency>
 <groupId>org.projectlombok</groupId>
 <artifactId>lombok</artifactId>
 <optional>true</optional>
 </dependency>
</dependencies>
 

UserController:

@RestController
public class UserController {
  @Autowired 
 private UserService userService;
 @RequestMapping("/findById/{id}")
 public User findById(@PathVariable int id) {
 User user = userService.findById(id);
 return user;
 }
 @RequestMapping("/findAll")
 public List<User> findAll() {
 List<User> userList = userService.findAll();
 return userList;
 }
 @RequestMapping("/insert")
 public void insert() {
 User user = new User();
 user.setName("张三");
 user.setSex("男");
 user.setAge(18);
 user.setAddress("江西省");
 user.setPhone("456789645");
 userService.insert(user);
 }
 @RequestMapping("/delete")
 public void delete() {
 User user = new User();
 user.setId(5);
 userService.delete(user);
 }
 @RequestMapping("/update")
 public void update() {
 User user = new User();
 user.setId(5);
 user.setName("李四");
 userService.update(user);
 }
}
 

UserService:

public interface UserService {
 public User findById(int id);
 public List<User> findAll();
 public void insert(User user);
 public void update(User user);
 public void delete(User user);
}
 

UserServiceImpl:

@Service
public class UserServiceImpl implements UserService {
 @Autowired
 private UserMapper userMapper;
 @Override
 public User findById(int id) {
 return userMapper.selectByPrimaryKey(id);
 }
 @Override
 public List<User> findAll() {
 return userMapper.selectAll();
 }
 @Override
 public void insert(User user) {
 userMapper.insertSelective(user);
 }
 @Override
 public void update(User user) {
 userMapper.updateByPrimaryKey(user);
 }
 @Override
 public void delete(User user) {
 userMapper.deleteByPrimaryKey(user);
 }
}
 

UserMapper:

public interface UserMapper extends Mapper<User> {
}
 

application.properties:

#tomcat port
server.port=8080
#datasource
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://188.131.247.26:3306/springboot-tkmybatis01?allowMultiQueries=true&useUnicode=true&useSSL=false&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull
spring.datasource.username=root
spring.datasource.password=root
#logging
logging.level.com.wyj.mapper:debug
 

User:

@Data
@Entity
public class User implements Serializable {
 @Id
 @KeySql(useGeneratedKeys = true)
 private Integer id;
 private String name;
 private String sex;
 private Integer age;
 private String address;
 private String phone;
}
 

SpringbootTkmybatisApplication:

@SpringBootApplication
@MapperScan("com.wyj.mapper")//tkmybatis的注解
public class SpringbootTkmybatisApplication {
 public static void main(String[] args) {
 SpringApplication.run(SpringbootTkmybatisApplication.class, args);
 }
}
 

关注、转发、评论头条号每天分享java 知识,私信回复“源码”赠送Spring源码分析、Dubbo、Redis、Netty、zookeeper、Spring cloud、分布式资料

文章来源:智云一二三科技

文章标题:springboot整合tkmybatis(通用mapper)

文章地址:https://www.zhihuclub.com/200787.shtml

关于作者: 智云科技

热门文章

网站地图