gpt4 book ai didi

java - 在 Oracle 中将 DB 数据与 Java 字符串进行比较是否安全?

转载 作者:行者123 更新时间:2023-12-01 11:13:39 25 4
gpt4 key购买 nike

我正在将行数据从两个 Oracle DB 提取到两个字符串列表中。我想通过迭代这些列表并运行基本的 .equals() 比较来比较这些行。迭代每个列表并通过字符串比较来比较每个元素是否安全/实用?

示例:

List<String> resultSet1 = <result set of rows from DB1 as string list>
List<String> resultSet2 = <result set of rows from DB2 as string list>

//假设结果集大小相同并指向具有相同主键/复合键的行

for(int i = 0; i < resultSet1.size(); i++)
{
if(resultSet1.get(i).equals(resultSet2.get(i))){
<DO SOMETHING>
}
}

最佳答案

正如您的假设所述,您的结果集需要具有相同的大小。此外,它们必须按相同的顺序排序并包含相同的键集。也就是说,如果 recordSet1 具有 {1,2,3,4},则 recordSet2 必须具有 {1,2,3,4}。 {1,2,4,3} 不会削减它,{1,2,3,5} 也不会。

除此之外,这意味着您的列表必须使用保留顺序(或允许您控制顺序)的实际实现类。

就我个人而言,我会通过加入数据库中的数据来解决这个问题。如果这是不可能的(例如,有两个独立的数据库,并且它们中没有良好的分布式查询功能),那么我可能会使用 HashMap 而不是列表 - HashMap 的键是数据的键。这样,您就可以迭代 resultSet1 的 keySet,并使用该键从 resultSet2 中查找相应的值。它会更清晰并且不易出错。

关于java - 在 Oracle 中将 DB 数据与 Java 字符串进行比较是否安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32097864/

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