gpt4 book ai didi

java - 如何在 java 中删除 SQL 结果中的空值?

转载 作者:行者123 更新时间:2023-11-30 12:02:07 25 4
gpt4 key购买 nike

我真的很难解决这个问题,如果可以的话请帮助我。

这个方法的作用是,它通过执行 SQL 查询来检索我在数据库中的标签,将结果存储在 ArrayList 中,然后返回它。

我的数据库包含 3 个属性:名称、标签、位置。我只想检索标签并单独显示它们而不显示其他属性,所以它就像这种格式,例如 [tag1,tag2,tag3]

因为我的 toString 方法中的格式就是这样,我不能将它更改为只打印标签,因为我有另一种方法可以一起显示所有这些属性。

@Override
public String toString()
{
String p = (this.Name + ','+ this.Location+','+ this.Tag);

return p;
}

当我选择只输出标签时,我得到其他属性的空值,我得到的结果如下:[null,null,rfid1, null,null,rfid2, null,null,rfid3]

那么如何摆脱这些空值并只显示标记位呢?

我获取标签值的方法:

public ArrayList<wallet> getWalletTag() throws SQLException {
System.out.println("----------------");
System.out.println("Retrieve all tags");

Connection dbConnection = null;
Statement statement = null;
ResultSet resultset = null;
String query = "SELECT Tag FROM wallets;";

ArrayList<wallet> WalletsList = new ArrayList<>();
try {
dbConnection = getDBConnection();
statement = dbConnection.createStatement();
System.out.println(query);
resultset = statement.executeQuery(query);

while (resultset.next()) {
//String Name = resultset.getString("Name");
//String Loc = resultset.getString("Location");
String tag = resultset.getString("Tag");

WalletsList.add(new wallet (tag));
}
}
finally {

if (resultset !=null){
resultset.close();
}
if (statement !=null) {
statement.close();
}

if (resultset !=null) {
dbConnection.close();
}
}
return WalletsList;

}

我的 Controller 代码:

    walletDAO dao2 = new walletDAO();


ArrayList<wallet> u ;

try{

u=dao2.getWalletTag();

最佳答案

@Override
public String toString() {
StringBuilder sb = new StringBuilder();
if(Objects.nonNull(this.name)) {
sb.append(this.name+",");
}
if(Objects.nonNull(this.location)) {
sb.append(this.location+",");
}
if(Objects.nonNull(this.tag)) {
sb.append(this.tag);
}

return sb.toString();
}

我相信这会对你有所帮助。

关于java - 如何在 java 中删除 SQL 结果中的空值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58895340/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com