springboot16 整合MyBatis
官方文档:http://mybatis.org/spring-boot-starter/mybatis-spring-boot-autoconfigure/
Maven仓库地址:https://mvnrepository.com/artifact/org.mybatis.spring.boot/mybatis-spring-boot-starter/2.1.4
16.1、整合测试
1、导入 MyBatis 所需要的依赖
<dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.1.4</version>
</dependency>
2、配置数据库连接信息(不变)
spring:datasource:username: rootpassword: 123456#?serverTimezone=UTC解决时区的报错url: jdbc:mysql://localhost:3306/springboot?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8driver-class-name: com.mysql.cj.jdbc.Drivertype: com.alibaba.druid.pool.DruidDataSource#Spring Boot 默认是不注入这些属性值的,需要自己绑定#druid 数据源专有配置initialSize: 5minIdle: 5maxActive: 20maxWait: 60000timeBetweenEvictionRunsMillis: 60000minEvictableIdleTimeMillis: 300000validationQuery: SELECT 1 FROM DUALtestWhileIdle: truetestOnBorrow: falsetestOnReturn: falsepoolPreparedStatements: true#配置监控统计拦截的filters,stat:监控统计、log4j:日志记录、wall:防御sql注入#如果允许时报错 java.lang.ClassNotFoundException: org.apache.log4j.Priority#则导入 log4j 依赖即可,Maven 地址:https://mvnrepository.com/artifact/log4j/log4jfilters: stat,wall,log4jmaxPoolPreparedStatementPerConnectionSize: 20useGlobalDataSourceStat: trueconnectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500
3、测试数据库是否连接成功!
4、创建实体类,导入 Lombok!
lombok的maven坐标
<dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.16.12</version>
</dependency>
package com.zy.anquan.pojo;import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;@Data
@AllArgsConstructor
@NoArgsConstructor
//@Data 生成getter,setter ,toString等函数
// @NoArgsConstructor 生成无参构造函数
// @AllArgsConstructor //生成全参数构造函数
public class User {private int id;private String name;private String pwd;
}
5、创建mapper目录以及对应的 Mapper 接口
//@Mapper : 表示本类是一个 MyBatis 的 Mapper
@Mapper
@Repository
public interface UserMapper {List<User> queryUserList();User queryUserById(int id);int addUser(User user);int updateUser(User user);int deleteUser(int id);}
6、对应的Mapper映射文件
<?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="com.kuang.mapper.DepartmentMapper"><select id="queryUserList" resultType="User">select * from user;</select><select id="queryUserById" resultType="User" parameterType="int">select * from user where id = #{id};</select><insert id="addUser" parameterType="User">insert into user(id,name,pwd) values(#{id},#{name},#{pwd});</insert><update id="updateUser" parameterType="User">update user set name=#{name},pwd=#{pwd} where id=#{id};</update><delete id="deleteUser" parameterType="int">delete from user where id = #{id};</delete>
</mapper>
7、maven配置资源过滤问题
<resources><resource><directory>src/main/java</directory><includes><include>**/*.xml</include></includes><filtering>true</filtering></resource>
</resources>
或者 在yaml中配置
mybatis:type-aliases-package: com.kuang.pojomapper-locations: classpath:/mybatis/mapper/*.xml
8、编写Controller 进行测试!
@RestController
public class UserController {@Autowiredprivate UserMapper userMapper;@GetMapping("/queryUserList")public List<User> queryUserList(){List<User> users = userMapper.queryUserList();for (User user : users) {System.out.println(user);}return users;}@GetMapping("/addUser")public String addUser(){userMapper.addUser(new User(6,"阿毛","123456"));return "ok";}@GetMapping("/updateUser")public String udpateUser(){userMapper.updateUser(new User(6,"阿毛","111111"));return "ok";}@GetMapping("/deleteUser")public String deleteUser(){userMapper.deleteUser(5);return "ok";}
}
启动项目访问进行测试!
springboot16 整合MyBatis相关推荐
- SpringBoot整合MyBatis详细教程~
目录 1. 导入依赖 2. 连接数据库 3. 编写数据库配置信息 4. 编写pojo实体类 5. 编写mapper接口 6. 编写mapper.xml 7. 编写controller 8. 测试 1. ...
- MyBatis - 6.Spring整合MyBatis
1.查看不同MyBatis版本整合Spring时使用的适配包: http://www.mybatis.org/spring/ 2.下载整合适配包 https://github.com/mybatis/ ...
- mybatis 一对多_Springboot整合Mybatis实现级联一对多CRUD操作
在关系型数据库中,随处可见表之间的连接,对级联的表进行增删改查也是程序员必备的基础技能.关于Spring Boot整合Mybatis在之前已经详细写过,不熟悉的可以回顾Spring Boot整合Myb ...
- Spring Boot 教程(三): Spring Boot 整合Mybatis
教程简介 本项目内容为Spring Boot教程样例.目的是通过学习本系列教程,读者可以从0到1掌握spring boot的知识,并且可以运用到项目中.如您觉得该项目对您有用,欢迎点击收藏和点赞按钮, ...
- SpringBoot第六篇:springboot整合mybatis
本文主要讲解如何在springboot下整合mybatis,并访问数据库.由于mybatis这个框架太过于流行,所以我就不讲解了. 引入依赖 在pom文件引入mybatis-spring-boot-s ...
- Spring Boot 整合 Mybatis Annotation 注解的完整 Web 案例
摘要: 原创出处 www.bysocket.com 「泥瓦匠BYSocket 」欢迎转载,保留摘要,谢谢! 『 公司需要人.产品.业务和方向,方向又要人.产品.业务和方向,方向- 循环』 本文提纲 一 ...
- spring整合mybatis(入门级简单教程1)--在spring中配置c3p0,并成功测试
引子:spring整合mybatis.因为,我们看完(我就是这样的)spring和mybatis之后,本想自己写一个小小的项目,以便加深理解,但是我发现在spring中整合mybatis并不是一件容易 ...
- Play Framework 2.5 整合 MyBatis
为什么80%的码农都做不了架构师?>>> 因为不想用 Play 官方支持的一些 ORM 框架,笔者开始在网上查询 Play 怎么整合 MyBatis ,但搜出来的结果往往都是 ...
- spring boot 整合mybatis 无法输出sql的问题
使用spring boot整合mybatis,测试功能的时候,遇到到了sql问题,想要从日志上看哪里错了,但是怎么都无法输出执行的sql,我使用的是log4j2,百度了一下,很多博客都说,加上下面的日 ...
最新文章
- 基于angular2实现用户登录并信息持久化的一些理解(二)
- 【面试锦囊】位运算介绍与经典例题总结
- 腐烂国度2怎么学计算机,腐烂国度2按键操作说明 腐烂国度2怎么操作
- D - Sequence Swapping DP
- property java用法_Java Properties getProperty(key)用法及代码示例
- python高级编程总结
- igmp是哪个层协议_【干货】IGMPv1协议闲聊
- matlab使用xlsread读取excel时报错/错误使用xlsread/matlab读取数据莫名其妙的错误
- 计算机无法添加网络位置,win10系统无法设置网络位置的操作办法
- 2020年叉车司机证考试题库及叉车司机试题解析
- 精彩博文收集目录索引
- 全程无尿点,死磕前端~
- char/nchar、varchar/nvarchar、char/character区别
- led驱动电源初学者必看_初学者:如何在Windows 8中查看Metro应用程序的已用驱动器空间...
- lsof 查看端口占用
- 【游戏开发实战】Unity使用ShaderGraph制作一个Loading水球(能量球 | UI | 2D | 特效 | URP)
- Nature:益生菌清除致病菌的机制
- Linux编写脚本 Hello word
- MFC发送消息(一)
- 肝素修饰载玻片/生物芯片(Heparin Functional Glass Slides)
热门文章
- 【负载观测】永磁同步电机的负载观测及前馈补偿
- 【机器学习】Weighted LSSVM原理与Python实现:LSSVM的稀疏化改进
- python函数myproduct_OpenERP与Python 元编程
- Kaggle 商品销量预测季军方案出炉,应对时间序列问题有何妙招
- shell脚本头,#!/bin/sh与#!/bin/bash的区别.
- 常用php操作redis命令整理(五)ZSET类型
- javac与java版本不一致
- 【二分图】洛谷P2055假期的宿舍
- linux常用文本编缉命令(strings/sed/awk/cut/uniq/sort)
- LeetCode Interleaving String