微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

仅当另一个元素在字符串中时,如何才能使元素出现?我怎样才能让一个键显示为一个值? StringSubstitutor

如何解决仅当另一个元素在字符串中时,如何才能使元素出现?我怎样才能让一个键显示为一个值? StringSubstitutor

我有一个字符串,HashMap 以列名作为键,列值作为值。

Map<String,String> columnValue = new HashMap<>();
            columnValue.put("userId","1");
            columnValue.put("orderId","2");
            columnValue.put("carId","3");
            columnValue.put("orderDate","2021-05-21 15:23");
            StringSubstitutor sub = new StringSubstitutor(columnValue);
            String query = "SELECT*FROM user_order Where ${userId} = ? AND  ${orderId}=? AND  ${carId}=?" +
                    "AND ${userAddress}=? AND  ${userDestination}=? AND ${orderCost}=? AND date_format(${orderDate},'%Y-%m-%d %H:%i')=?";

首先,我需要如果 HashMap 中存在带有列名的键,它会出现在行中,而不是值中。其次,我需要确保如果列名是字符串,那么后面会出现“and”这个词,除了最后一个元素。如何使用Apache的StringSubstitutor来做到这一点?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。