自定义mybatis拦截器

 我来答
灬海蓝09
2022-06-11 · TA获得超过5974个赞
知道小有建树答主
回答量:433
采纳率:97%
帮助的人:86.8万
展开全部
mybatis拦截器非常强大。用好了后,基础工具、高大上的代码封装都可以手到擒来。

一 mybatis中可以被拦截的类

(1) Executor :执行器

(2) ParameterHandler:参数处理器

(3) ResultSetHandler :结果集处理器

(4) StatementHandler:sql语句处理器。

二 自定义mybatis拦截器的定义。

(1)自定义类实现org.apache.ibatis.plugin.Interceptor接口

(2)自定义类上添加注解 org.apache.ibatis.plugin.Intercepts

(3)在上面注解中 定义要拦截的mybits的类型及对应方法。

通过org.apache.ibatis.plugin.Signature注解来定义。里面有三个参数: type代表拦截的类型即上面4个处理器,method 代码拦截的哪个方法,args 代表方法的参数类型。

三 实现代码

例子:mysql表中有的字段是decimal类型。查出的结果需要保留一位小数。

因为是对结果进行处理。这里我们拦截的是 ResultSetHandler

processMap方法实现如下

拦截器理解后还是挺简单的。积少成多。很快会成为面神。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Storm代理
2023-08-29 广告
"StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,I... 点击进入详情页
本回答由Storm代理提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式