Springboot中如何详细配置并使用Mybatis-Plus?

2026-05-16 03:472阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1074个文字,预计阅读时间需要5分钟。

Springboot中如何详细配置并使用Mybatis-Plus?

本节内容扩展介绍针对MyBatis的增强工具MyBatis-Plus,基于MyBatis的基础之上,仅做增强而不做改变,以简化开发、提高效率而生。

一、简介MyBatis-Plus是MyBatis的一个增强工具,旨在简化开发、提高效率。它对MyBatis进行增强,而不改变其核心API,让开发者能够快速上手。

Springboot中如何详细配置并使用Mybatis-Plus?

二、特点

1.简化开发:提供多种CRUD操作方法,如插入、查询、更新、删除等,减少代码量。

2.提高效率:内置分页插件,实现数据库分页功能,无需编写分页SQL。

3.通用代码封装:提供通用Mapper接口,简化代码编写。

三、示例

以下是一个简单的示例,演示如何使用MyBatis-Plus进行数据库操作。

java// 引入MyBatis-Plus依赖import com.baomidou.mybatisplus.annotation.TableName;import com.baomidou.mybatisplus.extension.plugins.pagination.Page;import com.baomidou.mybatisplus.extension.service.IService;

// 定义实体类@TableName(user)public class User { private Long id; private String name; private Integer age; // ... getter和setter方法}

// 定义Mapper接口public interface UserMapper extends BaseMapper {}

// 定义Service接口public interface UserService extends IService {}

// 使用MyBatis-Plus进行数据库操作public class MyBatisPlusDemo { public static void main(String[] args) { // 创建分页对象 Page page=new Page(1, 10); // 查询数据 List list=userService.list(page); // 输出结果 for (User user : list) { System.out.println(user.getName()); } }}

通过以上示例,大家可以对MyBatis-Plus有一个初步的了解。在实际开发中,MyBatis-Plus可以帮助我们快速实现数据库操作,提高开发效率。

本节内容扩展介绍下针对mybatis的增强工具mybatis-plus,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。

二话不多说,我们先写编写个简单的例子,让大家先初步的了解下mybatis-plus。

1.mybatis-plus初步实例

(1)创建一个spring boot web工程(具体创建过程就不再演示了,还不会的同学去看看spring boot专题第一节内容)

(2)引入依赖

<!--web项目依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--validation表单校验--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-validation</artifactId> </dependency> <!--mybatis-plus--> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.0</version> </dependency> <!--mysql驱动--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <!--thymeleaf依赖包--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> <!--lombok--> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency>

(3)配置文件application.yml

# DataSource Config spring: datasource: username: root password: tx@mysql@2020 url: jdbc:mysql://188.131.233.55:3306/spring_boot_topic driver-class-name: com.mysql.cj.jdbc.Driver(4)

(4)实体类User

package com.kinglead.demo.domain; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; ​ @Data @TableName(value = "t_user") //指明数据库表名 public class User { private Long id; private String name; private Integer age; private String email; }

(5)创建Mapper接口

package com.kinglead.demo.mapper; ​ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.kinglead.demo.domain.User; ​ //未来使用mybatis-plus的公共接口,必须继承BaseMapper public interface UserMapper extends BaseMapper<User> { }

(6)创建Service接口

UserService

package com.kinglead.demo.service; import com.kinglead.demo.domain.User; import java.util.List; public interface UserService { List<User> queryUserList(); }

UserServiceImpl

package com.kinglead.demo.service.impl; ​ import com.kinglead.demo.domain.User; import com.kinglead.demo.mapper.UserMapper; import com.kinglead.demo.service.UserService; import org.springframework.stereotype.Service; ​ import javax.annotation.Resource; import java.util.List; ​ @Service public class UserServiceImpl implements UserService { @Resource private UserMapper userMapper; @Override public List<User> queryUserList() { //使用mybatis-plus公共查询接口完成列表查询 return userMapper.selectList(null); } }

(7)创建controller

package com.kinglead.demo.controller; ​ import com.kinglead.demo.domain.User; import com.kinglead.demo.service.UserService; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; ​ import javax.annotation.Resource; import java.util.List; ​ @Controller @RequestMapping("/user") public class UserController { ​ @Resource private UserService userService; ​ @RequestMapping("/userList") public ModelAndView queryUserList(ModelAndView modelAndView){ List<User> userList = userService.queryUserList(); modelAndView.addObject("userList", userList); modelAndView.setViewName("userList"); return modelAndView; } ​ }

(8)用户列表页面

<!DOCTYPE html> <html xmlns:th="www.thymeleaf.org"> <head> <meta github.com/kinglead2012/myblog

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。

本文共计1074个文字,预计阅读时间需要5分钟。

Springboot中如何详细配置并使用Mybatis-Plus?

本节内容扩展介绍针对MyBatis的增强工具MyBatis-Plus,基于MyBatis的基础之上,仅做增强而不做改变,以简化开发、提高效率而生。

一、简介MyBatis-Plus是MyBatis的一个增强工具,旨在简化开发、提高效率。它对MyBatis进行增强,而不改变其核心API,让开发者能够快速上手。

Springboot中如何详细配置并使用Mybatis-Plus?

二、特点

1.简化开发:提供多种CRUD操作方法,如插入、查询、更新、删除等,减少代码量。

2.提高效率:内置分页插件,实现数据库分页功能,无需编写分页SQL。

3.通用代码封装:提供通用Mapper接口,简化代码编写。

三、示例

以下是一个简单的示例,演示如何使用MyBatis-Plus进行数据库操作。

java// 引入MyBatis-Plus依赖import com.baomidou.mybatisplus.annotation.TableName;import com.baomidou.mybatisplus.extension.plugins.pagination.Page;import com.baomidou.mybatisplus.extension.service.IService;

// 定义实体类@TableName(user)public class User { private Long id; private String name; private Integer age; // ... getter和setter方法}

// 定义Mapper接口public interface UserMapper extends BaseMapper {}

// 定义Service接口public interface UserService extends IService {}

// 使用MyBatis-Plus进行数据库操作public class MyBatisPlusDemo { public static void main(String[] args) { // 创建分页对象 Page page=new Page(1, 10); // 查询数据 List list=userService.list(page); // 输出结果 for (User user : list) { System.out.println(user.getName()); } }}

通过以上示例,大家可以对MyBatis-Plus有一个初步的了解。在实际开发中,MyBatis-Plus可以帮助我们快速实现数据库操作,提高开发效率。

本节内容扩展介绍下针对mybatis的增强工具mybatis-plus,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。

二话不多说,我们先写编写个简单的例子,让大家先初步的了解下mybatis-plus。

1.mybatis-plus初步实例

(1)创建一个spring boot web工程(具体创建过程就不再演示了,还不会的同学去看看spring boot专题第一节内容)

(2)引入依赖

<!--web项目依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--validation表单校验--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-validation</artifactId> </dependency> <!--mybatis-plus--> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.0</version> </dependency> <!--mysql驱动--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <!--thymeleaf依赖包--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> <!--lombok--> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency>

(3)配置文件application.yml

# DataSource Config spring: datasource: username: root password: tx@mysql@2020 url: jdbc:mysql://188.131.233.55:3306/spring_boot_topic driver-class-name: com.mysql.cj.jdbc.Driver(4)

(4)实体类User

package com.kinglead.demo.domain; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; ​ @Data @TableName(value = "t_user") //指明数据库表名 public class User { private Long id; private String name; private Integer age; private String email; }

(5)创建Mapper接口

package com.kinglead.demo.mapper; ​ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.kinglead.demo.domain.User; ​ //未来使用mybatis-plus的公共接口,必须继承BaseMapper public interface UserMapper extends BaseMapper<User> { }

(6)创建Service接口

UserService

package com.kinglead.demo.service; import com.kinglead.demo.domain.User; import java.util.List; public interface UserService { List<User> queryUserList(); }

UserServiceImpl

package com.kinglead.demo.service.impl; ​ import com.kinglead.demo.domain.User; import com.kinglead.demo.mapper.UserMapper; import com.kinglead.demo.service.UserService; import org.springframework.stereotype.Service; ​ import javax.annotation.Resource; import java.util.List; ​ @Service public class UserServiceImpl implements UserService { @Resource private UserMapper userMapper; @Override public List<User> queryUserList() { //使用mybatis-plus公共查询接口完成列表查询 return userMapper.selectList(null); } }

(7)创建controller

package com.kinglead.demo.controller; ​ import com.kinglead.demo.domain.User; import com.kinglead.demo.service.UserService; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; ​ import javax.annotation.Resource; import java.util.List; ​ @Controller @RequestMapping("/user") public class UserController { ​ @Resource private UserService userService; ​ @RequestMapping("/userList") public ModelAndView queryUserList(ModelAndView modelAndView){ List<User> userList = userService.queryUserList(); modelAndView.addObject("userList", userList); modelAndView.setViewName("userList"); return modelAndView; } ​ }

(8)用户列表页面

<!DOCTYPE html> <html xmlns:th="www.thymeleaf.org"> <head> <meta github.com/kinglead2012/myblog

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。