mybatis map参数判断为空,mapper查询无结果返回空对象
目录
米巴提斯返回地图数据空值字段不显示查询结构化查询语言添加每个字段的判断空结果类型利用实体返回springMVC mybatis查询数据框架返回地图空值未返回字段框架开启CallSettersOnNulls
mybatis返回map数据空值字段不显示
查询sql添加每个字段的判断空
IFNULL(rate,)作为费率
ResultType利用实体返回
不用地图
springMVC+mybatis查询数据
返回resultType="map "时,如果数据为空的字段,则该字段省略不显示,可以通过添加配置文件,规定查询数据为空是则返回零.
?可扩展标记语言版本=1.0 编码=UTF八号?DOCTYPE配置公共-//mybatis。org//DTD SQL映射配置3.1//EN http://mybatis。org/DTD/mybatis-3-Config。 DTD 配置设置设置名称= callSettersOnNulls 值= true //settings/configuration spring-mybatis。可扩展置标语言
!春天和米巴蒂斯完美整合,添加框架的配置映射文件-bean id= sqlSessionFactory class= org。我的巴蒂斯。春天。sqlsessionfactorybean property name= data source ref= data source /property name= config location value= class path : my batis-configuration。XML !- 自动扫描mapping.xml文件-property name= mapper locations value= class path : mapping/* .XML /属性/bean如果想要配置速度的默认值,例如""字符串,则可以建立一个类,实现框架的类型处理器接口
公共类EmptyStringIfNull实现TypeHandlerString { @ Override public String get result(ResultSet RS,String columnName)抛出SQLException { return(RS。getstring(列名)==null)? RS。getstring(列名);} @覆盖公共字符串getResult(ResultSet rs,int columnIndex)抛出SQLException { return(RS。getstring(列索引)==null)? RS。getstring(列索引);} @覆盖公共字符串getResult(CallableStatement cs,int columnIndex)抛出SQLException { return(cs。getstring(列索引)==null)? : cs。getstring(列索引);} @覆盖public void set参数(prepared statement PS,int arg1,String str,JdbcType jdbcType)抛出SQLException { }}在sql.xml文件定义与使用如下如下
结果映射id= find type= Java。util。link hashmap result property= name column= name /result property= phone column= phone /result property= rate column= rate type handler= com。我的巴蒂斯。emptystringifnull //结果映射
mybatis返回map空值未返回字段
mybatis 开启CallSettersOnNulls
@ bean公共SqlSessionFactory sqlSessionFactoryBean()抛出异常{ sqlSessionFactoryBean sqlSessionFactoryBean=new sqlSessionFactoryBean();sqlsessionfactorybean。设置数据源(data source());配置配置=新。配置();配置。setcallsettersnulls(true);//地图返回空字段消失问题页面拦截器页面插件=新页面拦截器();JalorResultSetInterceptor jalorResultSetPlugin=new JalorResultSetInterceptor();程序拦截器程序插件=新程序拦截器();//添加插件sqlsessionfactorybean。设置插件(new Interceptor[]{ page plugin,jalorResultSetPlugin,program plugin });sqlsessionfactorybean。设置配置(配置);返回sqlsessionfactorybean。getobject();}以上为个人经验,希望能给大家一个参考,也希望大家多多支持盛行它.
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。