为了构建数据库系统,我使用了一个简单的构建器来根据用户的选择生成选择查询。它有几个 boolean 值,然后按如下方式进行
StringBuilder builder = new StringBuilder();
builder.append("SELECT ");
if(addOpen)
builder.append("Open ");
if(addHigh)
builder.append("High ");
if(addLow)
builder.append("Low ");
if(addSettle)
builder.append("Settle ");
builder.append("FROM " + tableName);
现在,我的问题很简单 - 我需要包含逗号,但如果我包含逗号,则它后面必须有一个值,所以我无法执行打开、打开、关闭等操作。是否有一个巧妙的解决方案微不足道,但对我来说却出奇困难的问题?
最佳答案
你在找类似 Apache Commons' StringUtils.join() 的东西吗?方法?即:
Collection<String> selections = Arrays.asList("Open", "Low");
String clause = StringUtils.join(selections, ',');
然后就
String sql = "SELECT " + clause + " FROM " + TableName;
关于java - 使用逗号分隔值构建字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10711374/