日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Springboot如何使用mybatis實現攔截SQL分頁

瀏覽:20日期:2023-05-10 11:07:06

新建一個類MyPageInterceptor.java(注意在springboot中要添加注解@Component)

package com.grand.p1upgrade.mapper.test;import java.sql.Connection;import java.util.Map;import java.util.Properties;import org.apache.ibatis.executor.parameter.ParameterHandler;import org.apache.ibatis.executor.statement.StatementHandler;import org.apache.ibatis.mapping.MappedStatement;import org.apache.ibatis.plugin.Interceptor;import org.apache.ibatis.plugin.Intercepts;import org.apache.ibatis.plugin.Invocation;import org.apache.ibatis.plugin.Plugin;import org.apache.ibatis.plugin.Signature;import org.apache.ibatis.reflection.MetaObject;import org.apache.ibatis.reflection.SystemMetaObject;import org.springframework.stereotype.Component;@Component@Intercepts({@Signature(type=StatementHandler.class,method='prepare',args={Connection.class,Integer.class})})public class MyPageInterceptor implements Interceptor { private int page; private int size; @SuppressWarnings('unused') private String dbType; @SuppressWarnings('unchecked') @Override public Object intercept(Invocation invocation) throws Throwable { System.out.println('plugin is running...'); StatementHandler statementHandler = (StatementHandler)invocation.getTarget(); MetaObject metaObject = SystemMetaObject.forObject(statementHandler); while(metaObject.hasGetter('h')){ Object object = metaObject.getValue('h'); metaObject = SystemMetaObject.forObject(object); } while(metaObject.hasGetter('target')){ Object object = metaObject.getValue('target'); metaObject = SystemMetaObject.forObject(object); } MappedStatement mappedStatement = (MappedStatement)metaObject.getValue('delegate.mappedStatement'); String mapId = mappedStatement.getId(); if(mapId.matches('.+ByPager$')){ ParameterHandler parameterHandler = (ParameterHandler)metaObject.getValue('delegate.parameterHandler'); Map<String, Object> params = (Map<String, Object>)parameterHandler.getParameterObject(); page = (int)params.get('page'); size = (int)params.get('size'); String sql = (String) metaObject.getValue('delegate.boundSql.sql'); sql += ' limit '+(page-1)*size +','+size; metaObject.setValue('delegate.boundSql.sql', sql); } return invocation.proceed(); } @Override public Object plugin(Object target) { return Plugin.wrap(target, this); } @Override public void setProperties(Properties properties) { String limit = properties.getProperty('limit','10'); this.page = Integer.parseInt(limit); this.dbType = properties.getProperty('dbType', 'mysql'); } }

添加測試TestMapper.java

package com.grand.p1upgrade.mapper.test;import java.util.List;import java.util.Map;import org.apache.ibatis.annotations.Mapper;@Mapperpublic interface TestMapper { public List<Map<String,Object>> findByPager(Map<String, Object> params); public long count();}

TestMapper.xml

<?xml version='1.0' encoding='UTF-8' ?><!DOCTYPE mapper PUBLIC '-//mybatis.org//DTD Mapper 3.0//EN' 'http://mybatis.org/dtd/mybatis-3-mapper.dtd'><mapper namespace='com.grand.p1upgrade.mapper.test.TestMapper'> <select resultType='java.util.HashMap'> select * from p1project.sys_user </select> <select resultType='long'> select count(1) from p1project.sys_user </select></mapper>

在調用TestMapper.findByPager傳遞參數的時候將page和size傳入即可

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Spring
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产精品天堂蜜av在线播放| 日韩高清电影一区| 国产精品三p一区二区| 亚洲区第一页| 国产精品美女| 亚洲一区激情| 亚洲精品1区| 欧美一级专区| 少妇精品久久久一区二区三区| 亚洲青青久久| 奶水喷射视频一区| 亚洲在线观看| 免费不卡在线观看| 四虎国产精品免费久久| 日本不卡一区二区三区| 欧美亚洲tv| 美女国产精品久久久| 精品一区二区男人吃奶| 黄色网一区二区| 日韩国产一区| 久久中文亚洲字幕| 黄色av日韩| 天堂av一区| 免费在线欧美黄色| 在线天堂资源www在线污| 亚洲婷婷在线| 免费久久99精品国产| 久久国际精品| 色一区二区三区| 99国产精品自拍| 日韩av网站免费在线| 精品一二三区| 欧美一区二区三区高清视频| 美女精品在线观看| 国产亚洲一区| av高清一区| 天使萌一区二区三区免费观看| 香蕉久久一区| 国产h片在线观看| 女人天堂亚洲aⅴ在线观看| 免费看黄色91| 国产精品欧美大片| 99久久精品网| 亚洲精品日本| 麻豆久久一区| 女主播福利一区| 日本成人中文字幕在线视频| 国产精品一二| 香蕉久久99| 日韩精品导航| 播放一区二区| 天海翼精品一区二区三区| 国产一区二区精品福利地址| 妖精视频成人观看www| 国产日韩欧美一区在线| 日韩久久精品网| 久久国产精品亚洲77777| 久久免费影院| 日韩精品中文字幕吗一区二区| 麻豆精品视频在线观看免费| 精品国产18久久久久久二百| 成人av三级| 亚洲一区二区三区免费在线观看| 久久天堂成人| 蜜桃视频一区二区| 麻豆91在线播放| 激情五月综合| 欧美日韩网址| 不卡一区2区| 国产精品久久久久久久久久久久久久久 | 午夜国产精品视频| 欧美日韩国产综合网| 亚洲v天堂v手机在线| 国产精品久久久久77777丨| 91精品久久久久久久久久不卡| 一二三区精品| 91精品一区国产高清在线gif| 久久国产欧美日韩精品| 亚洲激情av| 国产一区二区久久久久| 少妇精品久久久一区二区三区| 天堂8中文在线最新版在线| 日韩高清欧美激情| 亚洲主播在线| 色88888久久久久久影院| 国产欧美综合一区二区三区| 99视频精品免费观看| 国产va在线视频| 欧美日韩一区二区三区在线电影| 久久蜜桃av| 成人台湾亚洲精品一区二区| 日本不卡中文字幕| 亚洲一区二区三区免费在线观看| 麻豆国产在线| 久久97久久97精品免视看秋霞| 午夜影院欧美| 香蕉久久99| 国产成人免费精品| 欧美日韩调教| 亚洲永久精品唐人导航网址| 国产精品一区二区99| 黄色aa久久| 欧美一级久久| 日韩动漫一区| 亚洲午夜91| 日韩三区免费| 久久男人天堂| 精品成av人一区二区三区| 日韩av不卡一区二区| 麻豆久久精品| 一本色道久久精品| 欧美日韩国产在线观看网站| 久久久成人网| 神马久久午夜| 日本不卡免费高清视频在线| 久久影视三级福利片| 日本成人在线一区| 亚州欧美在线| 日韩欧美中文字幕一区二区三区 | 免费在线观看成人| 亚洲一区中文| 日韩一区二区免费看| 五月天久久久| 欧美日韩视频| 免费观看不卡av| 91高清一区| 91久久黄色| 三级欧美韩日大片在线看| 久色成人在线| 一区二区三区四区精品视频| 一区二区电影在线观看| 亚洲精品极品| 亚洲资源网站| 日韩国产在线观看一区| 婷婷综合福利| 日本午夜精品| 美日韩一区二区三区| 国产精品一区三区在线观看| 国产欧美日韩在线观看视频 | 高清在线一区| 日韩中文影院| 在线国产一区二区| 日韩影院免费视频| 日本国产一区| 久久99影视| 久久精品网址| 神马午夜在线视频| 精品欧美久久| 蜜桃视频一区二区| 久久国产人妖系列| 国产videos久久| 亚洲91精品| 丝袜国产日韩另类美女| 亚洲精品日本| 国产精品乱战久久久| 久久中文欧美| 99热国内精品| 快she精品国产999| 日韩精品1区2区3区| 欧美国产极品| 国产一区二区三区国产精品| 国产韩日影视精品| 日韩中文字幕| 国产精品国产一区| 国产99亚洲| 日韩一区免费| 国产精品福利在线观看播放| 99久久婷婷这里只有精品| 中文一区一区三区免费在线观 | 久久丁香四色| 日韩av首页| 男人天堂欧美日韩| 国产精品一区二区三区www| 黑人精品一区| 先锋影音国产一区| 久久久久黄色| 亚洲男女自偷自拍| 日韩国产在线一| 日韩中文字幕高清在线观看| 在线看片日韩| 国产成人精品福利| 人人精品人人爱| 精品三级av| 丝袜诱惑制服诱惑色一区在线观看| 久久99久久人婷婷精品综合| 91久久国产| 欧美激情视频一区二区三区免费 | 日韩精品亚洲专区在线观看| 色综合五月天| 亚洲欧洲免费| 五月天av在线| 日本成人中文字幕在线视频| 日韩毛片在线| 国产精品免费精品自在线观看| 久久久久美女| 久久中文字幕一区二区三区| 亚洲欧美不卡| 日本免费一区二区三区四区| 91麻豆精品激情在线观看最新| 秋霞影视一区二区三区|