-
10 — springboot整合mybatis — 更新完毕
1、xml版 —— 复杂sql使用xml,简单sql使用注解
1)、导入依赖
|
|
|
<!-- |
|
mybatis-spring-boot-starter是第三方( mybatis )jar包,不是spring官网的 |
|
spring自己的生态是:spring-boot-stater-xxxx |
|
--> |
|
<dependency> |
|
<groupId>org.mybatis.spring.boot</groupId> |
|
<artifactId>mybatis-spring-boot-starter</artifactId> |
|
<version>1.3.2</version> |
|
</dependency> |
|
|
|
<dependency> |
|
<groupId>com.alibaba</groupId> |
|
<artifactId>druid-spring-boot-starter</artifactId> |
|
<version>1.1.10</version> |
|
</dependency> |
|
|
|
<dependency> |
|
<groupId>mysql</groupId> |
|
<artifactId>mysql-connector-java</artifactId> |
|
<version>5.1.47</version> |
|
</dependency> |
|
|
|
<dependency> |
|
<groupId>org.projectlombok</groupId> |
|
<artifactId>lombok</artifactId> |
|
</dependency> |
|
2)、编写实体
|
|
|
package cn.xiegongzi.entity; |
|
|
|
import lombok.AllArgsConstructor; |
|
import lombok.Data; |
|
import lombok.NoArgsConstructor; |
|
|
|
import java.io.Serializable; |
|
|
|
|
|
|
|
|
|
public class User implements Serializable { |
|
|
|
private Integer id; |
|
private String username; |
|
private String password; |
|
} |
|
3)、编写dao层 / mapper
|
|
|
package cn.xiegongzi.mapper; |
|
|
|
import cn.xiegongzi.entity.User; |
|
import org.apache.ibatis.annotations.Mapper; |
|
|
|
import java.util.List; |
|
|
|
/* |
|
* @Mapper 这个注解是mybati-spring提供的,即:和自动装配是一样的效果 |
|
* 还可以用: |
|
* @Repository 是spring本身提供的 |
|
* |
|
* 以及:在启动类( main )中使用@mapperScan扫包 |
|
* */ |
|
|
|
|
|
|
|
public interface IUserMapper { |
|
|
|
List<User> findALLUser(); |
|
} |
|
4)、编写xml的sql语句
- 注意点:dao层 / mapper和xml的同包同名问题
5)、编写yml
|
|
|
# 编写连接池 |
|
spring: |
|
datasource: |
|
driver-class-name: com.mysql.jdbc.Driver |
|
url: jdbc:mysql://localhost:3306/mybatis_spring?useUnicode=true&characterEncoding=utf-8 |
|
username: root |
|
password: "072413" |
|
type: com.alibaba.druid.pool.DruidDataSource |
|
|
|
# 把实现类xml文件添加进来 |
|
mybatis: |
|
mapper-locations: classpath:mapper/*.xml |
|
type-aliases-package: cn.xiegongzi.entity # 给实体类配置别名 |
|
configuration: |
|
map-underscore-to-camel-case: true # 开启驼峰命名映射 |
|
5)、测试
2、注解版
和ssm整合中的玩法一样 —— 只改动一个地方即可,就是不需要xml了,然后直接在dao层 / mapper的接口方法头上用@insert 、 @delete 、 @update 、 @select注解,然后编写sql即可
- 当然:也可以给日志设置级别
3、整合pageHelper分页插件
1)、导入依赖
|
|
|
<dependency> |
|
<groupId>com.github.pagehelper</groupId> |
|
<artifactId>pagehelper-spring-boot-starter</artifactId> |
|
<version>1.2.5</version> |
|
</dependency> |
|
|
|
2)、测试
作者:紫邪情
出 处:https://www.cnblogs.com/xiegongzi/p/15542730.html
最新更新
带有参数的装饰器
类装饰器
django中的auth模块与admin后台管理
python的日期处理
字符串常用方法
基本数据类型概述
python-map()函数基本用法
python带你实现任意下载AcFun视频数据~
bbs项目之注册功能
变量的定义和使用
三大常用数据库事务详解之三:事务运行
三大常用关系型数据库事务详解之二:基
三大关系型数据库事务详解之一:基本概
MongoDB常用命令(2)
MongoDB基本介绍与安装(1)
SQLServer触发器调用JavaWeb接口
SQL Server索引的原理深入解析
SqlServer2016模糊匹配的三种方式及效率问题
SQL中Truncate的用法
sqlserver 多表关联时在where语句中慎用tri
VB.NET中如何快速访问注册表
ASP.NET中图象处理过程详解
Vue(1)Vue安装与使用
JavaScript 语言入门
js将一段字符串的首字母转成大写
纯原生html编写的h5视频播放器
H5仿原生app短信验证码vue2.0组件附源码地
TypeScript(4)接口
TypeScript(3)基础类型
TypeScript(2)WebStorm自动编译TypeScript配置