springboot 整合mybatis实现curd
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相关推荐
- springboot2整合mysql5_SpringBoot2.X (二十五):SpringBoot整合 Mybatis + MySQL CURD 示例
话不多数,直接开始撸代码- 工程结构图 开始之前先放张工程结构图 1.maven 依赖: org.springframework.boot spring-boot-starter-web org.my ...
- SpringBoot整合mybatis、shiro、redis实现基于数据库的细粒度动态权限管理系统实例(转)...
SpringBoot整合mybatis.shiro.redis实现基于数据库的细粒度动态权限管理系统实例 shiro 目录(?)[+] 前言 表结构 maven配置 配置Druid 配置mybatis ...
- mybatis plugins_[MyBatis] SpringBoot 整合Mybatis
现在基本上搭建一个简单的工程都是三剑客 springboot+mybatis+redis 之前整合Mybatis 都是按照SSM来,所以,这一次带来SpringBoot+MyBatis 的快速整合 p ...
- SpringBoot整合Mybatis超详细流程
SpringBoot整合Mybatis超详细流程 文章目录 SpringBoot整合Mybatis超详细流程 前言 详细流程 0.引入Mybatis 1.创建数据 2.创建程序目录 3.理解后台访问流 ...
- SpringBoot整合Mybatis(高级)
SpringBoot整合Mybatis(高级) 文章目录 SpringBoot整合Mybatis(高级) 前言 基础环境配置 增删改查 ResultMap 复杂查询 多对一 一对多 动态SQL if ...
- 3、SpringBoot整合MyBatis注解版及配置文件版
目录 1.配置pom.xml 2.配置application.yml 3.配置DruidConfig关联yml的配置文件spring.datasource 4.创建数据库及数据库表结构 5.创建对应的 ...
- (一)SpringBoot 整合 MyBatis
一.工具 IDE:idea.DB:mysql 二.创建SpringBoot工程 在Idea中使用SpringInitializr模板创建SpringBoot工程,依赖选择如下: 这里也可以不选JDBC ...
- SpringBoot整合mybatis进行快速开发
SpringBoot整合mybatis进行数据库操作 1.环境的搭建 pom.xml <!--核心模块,包括自动配置支持.日志和YAML --> <dependencies>& ...
- springboot整合mysql5.7_详解SpringBoot整合MyBatis详细教程
1. 导入依赖 首先新建一个springboot项目,勾选组件时勾选Spring Web.JDBC API.MySQL Driver 然后导入以下整合依赖 org.mybatis.spring.boo ...
最新文章
- 关于时间差查询的一个小技巧
- C++ stringstream的用法
- JavaIO4--ObjectInputStream和ObjectOutputStream
- C语言试题四十二之假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:将字符串中的前导*号全部移到字符串的尾部。
- 安装Microsoft Windows SDK 7.1时出现的错误(附解决办法)
- 前端学习(3241):react生命周期forceUpdate
- 一维卷积神经网络_序列特征的处理方法之二:基于卷积神经网络方法
- MySQL06:变量、存储过程和函数、流程控制结构
- linux下imp导入oracle数据库,Oracle数据库Linux下的导入IMP
- java xss 参数_JAVA 重写HttpServletRequest的获取参数防止xss攻击
- 员工离职时,主管应该问相关竞业的两个问题
- 搭建IPv6网络环境
- adb interface 驱动问题(保证解决)
- nonebot qq机器人经常被封号怎么办?
- 创业维艰:一切从实际出发
- 林彪-怎样当好一名师长
- 计算机链接投影仪后不显示桌面,win10系统连接投影后不显示桌面图标怎么办
- xenu工具如何扫描网站
- JSHOP2学习2:十分钟建立一个舒适的编译环境
- RFC5731 - 中文翻译(原创)