Mybatis中怎么使用if语句
发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,这篇文章给大家介绍Mybatis中怎么使用if语句,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。一个参数情况DAO层Map selectPeriodByDataType(Stri
千家信息网最后更新 2025年02月03日Mybatis中怎么使用if语句
这篇文章给大家介绍Mybatis中怎么使用if语句,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
一个参数情况
DAO层
Map selectPeriodByDataType(String dataType);
XML文件
一个参数时,在if条件判断时,需要使用 _parameter 如果使用dataType,会报错如下
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'dataType' in 'class java.lang.String' at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77) at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446) at com.sun.proxy.$Proxy115.selectOne(Unknown Source) at org.mybatis.spring.SqlSessionTemplate.selectOne(SqlSessionTemplate.java:166) at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:82) at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59) at com.sun.proxy.$Proxy155.selectPeriodByDataType(Unknown Source) at com.bjbde.trade.service.impl.WmsDictionaryDataServiceImpl.getBuyerRightsPeriod(WmsDictionaryDataServiceImpl.java:47) at com.bjbde.trade.service.impl.WmsDictionaryDataServiceImpl$$FastClassBySpringCGLIB$$b29775c3.invoke()
解决方案
方案一
${alias}.DATA_VALUE dataValue
if中的test使用单引号,dataType参数对应的为字符串,需要使用""来引起来。
方案二
${alias}.DATA_VALUE dataValue
dataType对应的参数需要加上toString()方法,否则会将该值当做数字,从而找不到满足要求的条件。
多个参数情况
DAO层
ListselectDataProductList(DataProductListVO vo);
POJO类DataProductListVO
@Builder@Datapublic class DataProductListVO implements Serializable { private static final long serialVersionUID = -6905484517733433984L; //页码 默认值0 private Integer page = 0; //页长 默认值0 private Integer size = 0; private String industry; private String ownership; private String salNum; private String wiVal; private String name; private String tag; private String address; private String pubTime; private String comment; private String type;}
多个参数时,常将参数封装成对象来处理。
xml文件
${alias}.DATA_ID,${alias}.NAME,${alias}.SH_IMG,${alias}.TYP PRODUCT_TYP,${alias}.INDUSTRY,${alias}.RANGE,${alias}.OWNERSHIP,${alias}.TRADING,${alias}.LABELS,${alias}.LINK_MAN,${alias}.LINK_PHONE,${alias}.PRICE,${alias}.HAS_SPEC,${alias}.SPEC,${alias}.WDESC,${alias}.PUB_TIME,${alias}.COMMENT_SCORE,${alias}.SALED_NUM,${alias}.VIEW_NUM,${alias}.FAVORITY_NUM,${alias}.WSTATE,${alias}.MBR_ID,${alias}.DEFAULT_WI
关于Mybatis中怎么使用if语句就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
参数
方案
语句
内容
多个
情况
文件
更多
条件
帮助
不错
兴趣
字符
字符串
对象
小伙
小伙伴
引号
数字
文章
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
有主题词检索功能的数据库是什么
设置服务器管理口地址
隐藏ssid无线网络安全吗
服务器 128g内存
有关招投标外文文献数据库
河南省网络安全监控指挥系统
网络安全犯罪美剧
为什么我手机无法连服务器
通信网络安全防护管理招展
mc服务器下载
数据库及数据安全背景
软件开发模式及对应图
网络安全立体字画法
饥荒一直启动服务器
国家网络安全宣传周团日总结
下面哪个不属于软件开发阶段
可以报考的网络技术专业
idc 网络安全市场分析
苏州星企动力网络技术
织梦数据库被清
网络技术课时计划
安卓手机管理服务器数据库
企业名录数据库那个好
瀑布模型软件开发过程阶段
nosql与关系式数据库的区别
cms部署无法连接数据库
dota2 连不上服务器
如何管理软件开发部门
在线社工数据库sgk123
青岛丰荷互联网络科技有限公司