失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 【Java代码】实现字符串转数据库的 inStr【使用 JDK8 stream.collect(Collectors.j

【Java代码】实现字符串转数据库的 inStr【使用 JDK8 stream.collect(Collectors.j

时间:2023-02-08 22:16:48

相关推荐

【Java代码】实现字符串转数据库的 inStr【使用 JDK8 stream.collect(Collectors.j

why

有不少这样的情况,前端会传筛选条件,给到后端的时候是个 conditionStr ,如果您用的是 mybatis-plus 的 API 那么直接 split 一下就可以使用,如果不是,那就需要将其转换成 inStr ,下面举例说明。

use

转换【使用 JDK8 的 stream 实现】

public class conditionStrToInStr {public static void main(String[] args) {String conditionStr = "conditionValueA,conditionValueB,conditionValueC";String inStr = Arrays.stream(conditionStr.split(",")).collect(Collectors.joining("\',\'", "\'", "\'"));System.out.println(inStr);}}// 输出结果为 'conditionValueA','conditionValueB','conditionValueC'

mapper文件使用 inStr

<select id="getInfoByCondition" parameterType="map" >SELECT * FROM tableName<where><if test="inStr!= null and inStr!= ''">AND conditionField IN ( ${inStr} )</if></where></select><!-- SELECT * FROM tableName WHERE conditionField IN ('conditionValueA','conditionValueB','conditionValueC') -->

【Java代码】实现字符串转数据库的 inStr【使用 JDK8 stream.collect(Collectors.joining(delimiter prefix suffix)) 实现】

如果觉得《【Java代码】实现字符串转数据库的 inStr【使用 JDK8 stream.collect(Collectors.j》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。