前台传的字符串是A,B 后台要把字符串写到sql里,所以字符串要转为'A','B' sql写成in('A','B'),怎么转?查询用的JdbcTemplate,或者还有什么比较好的方案嘛,小弟感激不尽
4条回答 默认 最新
- tkzc_shark 2019-06-05 16:05关注
google的CharMatcher和Strings工具类
public List<TypePriceInfo> listTypePriceByProductIds(List<Long> productIds) { String sqlInParam = CharMatcher.is(',').trimFrom(Strings.repeat("?,", productIds.size())); String sql = BASE_TYPE_PRICE_INFO_SQL + "where p.product_id in(" + sqlInParam + ")"; List<TypePriceInfo> priceInfos = jdbcTemplate.query(sql, productIds.toArray(), typePriceInfoRowMapper); if (priceInfos == null) { return Collections.emptyList(); } else { return priceInfos; } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 多电路系统共用电源的串扰问题
- ¥15 slam rangenet++配置
- ¥15 有没有研究水声通信方面的帮我改俩matlab代码
- ¥15 对于相关问题的求解与代码
- ¥15 ubuntu子系统密码忘记
- ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
- ¥15 保护模式-系统加载-段寄存器
- ¥15 电脑桌面设定一个区域禁止鼠标操作
- ¥15 求NPF226060磁芯的详细资料
- ¥15 使用R语言marginaleffects包进行边际效应图绘制