mybatis介绍
MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。
mybatis架构图
我们这个demo实现就是基于mybatis的插件模块(主要实现mybatis的Interceptor接口)
Interceptor接口
package org.apache.ibatis.plugin;
import java.util.Properties;
/**
* @author Clinton Begin
*/
public interface Interceptor {
Object intercept(Invocation invocation) throws Throwable;
Object plugin(Object target);
void setProperties(Properties properties);
}
demo实现
主要技术 spring boot + mybatis
pom.xml
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
数据库 DDL
create table user
(
id int auto_increment primary key,
username varchar(20) null
);
核心代码
PageVo
需要的分页要继承这个类
public class PageVo {
protected int page = 1;//当前页数,默认为1
protected int rows = 15;//每页显示条数,默认为15
private int offset = 0;//每页起始条数
private int limit = 15;//每页结束条数
public int getLimit() {
return (page - 1) * rows;
}
public void setLimit(int limit) {
this