springboot 整合mybatis

  • pom文件
  • mvc 架构
  • application.properties 扩展配置,druid配置类

项目地址:
https://github.com/sevenyoungairye/spring-boot-study/tree/main/springboot-mybatis-05

pom文件

 <!--整合mybatis--><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.1.3</version></dependency><!-- druid数据源 --><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.21</version></dependency><!-- 官方提供 jdbc用来连接数据库 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId></dependency><!-- springboot 集成mvc --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!-- 连接数据库的mysql驱动 --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope></dependency><!--lombok 用于实体类的set/get 构造方法--><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency>

mvc 架构

  • 实体类
package cn.bitqian.entity;import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;/*** @author echo lovely* @date 2020/10/25 10:11*/
@Data // set/get
@NoArgsConstructor // 无参
@AllArgsConstructor // 有参
public class Users {private Integer userId;private String userName;private String userPassword;}
  • 基本的curd
package cn.bitqian.mapper;import cn.bitqian.entity.Users;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;import java.util.List;/*** user mapper* @author echo lovely* @date 2020/10/25 10:18*/
@Mapper // mybatis映射类
@Repository
public interface UsersMapper {List<Users> queryAllUsers();Users queryUserById(int userId);void addUser(Users users);void updateUser(Users users);void deleteUserById(int usersId);}
  • usersMapper
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.bitqian.mapper.UsersMapper"><select id="queryAllUsers" resultType="Users">select * from users1</select><select id="queryUserById" resultType="Users" parameterType="int">select * from users1 where userId = #{userId}</select><insert id="addUser" parameterType="Users">insert into users1 (userId, userName, userPassword) values (null, #{userName}, #{userPassword})</insert><update id="updateUser" parameterType="Users">update users1 set userName = #{userName}, userPassword = #{userPassword} where userId = #{userId}</update><delete id="deleteUserById" parameterType="Users">delete from users1 where userId = #{userId}</delete>
</mapper>
  • controller接口 restful风~
package cn.bitqian.controller;import cn.bitqian.entity.Users;
import cn.bitqian.mapper.UsersMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RestController;import java.util.List;/*** @author echo lovely* @date 2020/10/25 11:00*/
@RestController
public class UsersController {@Autowiredprivate UsersMapper usersMapper;@GetMapping(value = "/users")public List<Users> queryAllUsers() {return usersMapper.queryAllUsers();}@GetMapping(value = "/user/{id}")public Users queryOneUser(@PathVariable(value = "id") Integer id) {return usersMapper.queryUserById(id);}@GetMapping(value = "/add")public String addUser() {Users users = new Users(null, "abcdefghi", "abc");usersMapper.addUser(users);return "ok";}@GetMapping(value = "/upd/{id}/{userName}/{userPassword}")public String updateUser(@PathVariable(value = "id") Integer id,@PathVariable(value = "userName") String userName,@PathVariable(value = "userPassword") String userPassword) {Users users = new Users(id, userName, userPassword);usersMapper.updateUser(users);return "ok";}@GetMapping(value = "/del/{id}")public String deleteUser(@PathVariable(value = "id") Integer id) {usersMapper.deleteUserById(id);return "ok";}}

application.properties 扩展配置,druid配置类

spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.url=jdbc:mysql://localhost:3306/mybatis_study?serverTimezone=GMT
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.type=com.alibaba.druid.pool.DruidDataSourcespring.datasource.filters=wall# mybatis 配置
# 别名
mybatis.type-aliases-package=cn.bitqian.entity
# mybatis 配置文件 要扫描的路径
mybatis.mapper-locations=classpath:mapper/*.xml
package cn.bitqian.config;import com.alibaba.druid.pool.DruidDataSource;
import com.alibaba.druid.support.http.StatViewServlet;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;import javax.sql.DataSource;
import javax.xml.crypto.Data;
import java.util.HashMap;
import java.util.Map;/*** @author echo lovely* @date 2020/10/25 11:26*/
@Configuration
public class DruidConfig {// 自动装配@ConfigurationProperties(value = "spring.datasource")@Beanpublic DruidDataSource druidDataSource() {return new DruidDataSource();}// 注册 druid监控bean@Beanpublic ServletRegistrationBean druidServlet() {ServletRegistrationBean bean = new ServletRegistrationBean(new StatViewServlet(), "/druid/*");Map<String, String> initParameters = new HashMap<>();initParameters.put("loginUserName", "admin");initParameters.put("loginPassword", "123");initParameters.put("allow", "127.0.0.1");bean.setInitParameters(initParameters);return bean;}
}

更新,fork我的代码,使用git bash,git bash here, git clone 项目地址。

springboot 整合mybatis实现curd相关推荐

  1. springboot2整合mysql5_SpringBoot2.X (二十五):SpringBoot整合 Mybatis + MySQL CURD 示例

    话不多数,直接开始撸代码- 工程结构图 开始之前先放张工程结构图 1.maven 依赖: org.springframework.boot spring-boot-starter-web org.my ...

  2. SpringBoot整合mybatis、shiro、redis实现基于数据库的细粒度动态权限管理系统实例(转)...

    SpringBoot整合mybatis.shiro.redis实现基于数据库的细粒度动态权限管理系统实例 shiro 目录(?)[+] 前言 表结构 maven配置 配置Druid 配置mybatis ...

  3. mybatis plugins_[MyBatis] SpringBoot 整合Mybatis

    现在基本上搭建一个简单的工程都是三剑客 springboot+mybatis+redis 之前整合Mybatis 都是按照SSM来,所以,这一次带来SpringBoot+MyBatis 的快速整合 p ...

  4. SpringBoot整合Mybatis超详细流程

    SpringBoot整合Mybatis超详细流程 文章目录 SpringBoot整合Mybatis超详细流程 前言 详细流程 0.引入Mybatis 1.创建数据 2.创建程序目录 3.理解后台访问流 ...

  5. SpringBoot整合Mybatis(高级)

    SpringBoot整合Mybatis(高级) 文章目录 SpringBoot整合Mybatis(高级) 前言 基础环境配置 增删改查 ResultMap 复杂查询 多对一 一对多 动态SQL if ...

  6. 3、SpringBoot整合MyBatis注解版及配置文件版

    目录 1.配置pom.xml 2.配置application.yml 3.配置DruidConfig关联yml的配置文件spring.datasource 4.创建数据库及数据库表结构 5.创建对应的 ...

  7. (一)SpringBoot 整合 MyBatis

    一.工具 IDE:idea.DB:mysql 二.创建SpringBoot工程 在Idea中使用SpringInitializr模板创建SpringBoot工程,依赖选择如下: 这里也可以不选JDBC ...

  8. SpringBoot整合mybatis进行快速开发

    SpringBoot整合mybatis进行数据库操作 1.环境的搭建 pom.xml <!--核心模块,包括自动配置支持.日志和YAML --> <dependencies>& ...

  9. springboot整合mysql5.7_详解SpringBoot整合MyBatis详细教程

    1. 导入依赖 首先新建一个springboot项目,勾选组件时勾选Spring Web.JDBC API.MySQL Driver 然后导入以下整合依赖 org.mybatis.spring.boo ...

最新文章

  1. 关于时间差查询的一个小技巧
  2. C++ stringstream的用法
  3. JavaIO4--ObjectInputStream和ObjectOutputStream
  4. C语言试题四十二之假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:将字符串中的前导*号全部移到字符串的尾部。
  5. 安装Microsoft Windows SDK 7.1时出现的错误(附解决办法)
  6. 前端学习(3241):react生命周期forceUpdate
  7. 一维卷积神经网络_序列特征的处理方法之二:基于卷积神经网络方法
  8. MySQL06:变量、存储过程和函数、流程控制结构
  9. linux下imp导入oracle数据库,Oracle数据库Linux下的导入IMP
  10. java xss 参数_JAVA 重写HttpServletRequest的获取参数防止xss攻击
  11. 员工离职时,主管应该问相关竞业的两个问题
  12. 搭建IPv6网络环境
  13. adb interface 驱动问题(保证解决)
  14. nonebot qq机器人经常被封号怎么办?
  15. 创业维艰:一切从实际出发
  16. 林彪-怎样当好一名师长
  17. 计算机链接投影仪后不显示桌面,win10系统连接投影后不显示桌面图标怎么办
  18. xenu工具如何扫描网站
  19. JSHOP2学习2:十分钟建立一个舒适的编译环境
  20. RFC5731 - 中文翻译(原创)

热门文章

  1. oracle之高级子查询之课后练习
  2. 前端学习(1424):ajax低版本兼容问题
  3. 前端学习(1418):服务器响应的数据格式
  4. 前端学习(1409):多人管理29安装json转换工具
  5. 前端学习(792):返回索引号
  6. 玩转oracle 11g(46):图解oracle数据库
  7. mysql(1):查找语句练习
  8. 树莓派使用STEP4:安装vim
  9. STM32程序占用的内存容量计算
  10. [Github项目推荐] 机器学习 Python 知识点速查表