关于Mybatis3.5.1的ProviderMethodResolver

首先,我们在写@SelectProvider(本文以这个为例子)或者其他Provider是按照@SelectProvider(type=XXX.class,method="XXXXX")的方式写的,在3.5.1中,更新了所有provider的规范,现在只要在provider类上实现ProviderMethodResolver的接口,然后保证SQL编写@XXXXProvider注解的方法名一致,就可以在@XXXXProvider省略method函数

如下图:

1.Mapper:

关于Mybatis3.5.1的ProviderMethodResolver_第1张图片

2.Provider:

关于Mybatis3.5.1的ProviderMethodResolver_第2张图片

3.运行测试:

关于Mybatis3.5.1的ProviderMethodResolver_第3张图片

这里显示出来了provider里打印的语句,下面输出了结果(表中确实就这一条数据)

与数据库比对:

关于Mybatis3.5.1的ProviderMethodResolver_第4张图片

总结:确实减少了一些没必要的映射,但是对于通用型的provider还是不建议省略,这个适合对于特定一对一编辑SQL时省时省力,这个接口找起来也挺简单的,记住这个接口的作用,省略提供sql的方法,只要implement然后打上provider(提供)method(方法),一般前几个就会有(~o ̄3 ̄)~

你可能感兴趣的:(Spring研究,Mybatis)