Java 我们能一次带来两个数据集并进行比较吗

Java 我们能一次带来两个数据集并进行比较吗,java,multiple-resultsets,Java,Multiple Resultsets,我有一个ResultSet方法PublicResultSet getItemPurchase(String Pid),它从数据库表返回数据。类似地,我还有另一个方法publicResultset-getItemSale(String-sid)。我使用函数Resultset-rs1=getitemspurchase(Pid)调用了它们下一个函数是ResultSet rs2=getItemSale(Pid) 我想做如下事情 1. while(rs1.next) 2. { 3. rs1.getS

我有一个ResultSet方法PublicResultSet getItemPurchase(String Pid),它从数据库表返回数据。类似地,我还有另一个方法publicResultset-getItemSale(String-sid)。我使用函数Resultset-rs1=getitemspurchase(Pid)调用了它们下一个函数是ResultSet rs2=getItemSale(Pid)

我想做如下事情

 1. while(rs1.next)
 2. {
 3. rs1.getString("Item");
 4.      if(rs1.getString("price")==rs2.getString("price")
 5.        {
 6.          //some code here
 7.        }
 8.      else{
 9. rs1.getDate("Purchase Date");}
 10. rs2.getString("CustomerName");
 11. }

有谁能在这方面帮助我吗?

我建议您编写两个域对象,普通Java对象,如:

public class ItemPurchase{
    private String price;

    //setter/getter for price

    private String purchaseDate;
    //setter/getter for purchaseDate
}
public class ItemSale{
  private String price;

    //setter/getter for price

    private String customerName;
    //setter/getter for customerName
}
现在,在迭代每个结果集时创建一个对象列表,如下所示:

public List createListOfItemPurchased(ResultSet rs){
 List<ItemPurchase> purchaseList=new ArrayList<ItemPurchase>();
 while(rs.next()){
   ItemPurchase purchaseObject=new ItemPurchase();
   purchaseObject.setPrice(rs.getString("price"));
 //fill all required data in it
  purchaseList.add(purchaseObject);
 }
  return purchaseList;
}

你有什么问题?错误消息?意外的结果?如果两个结果集来自同一个数据库,那么我将使用类似于
的方法改进SQL查询,其中a.price=b.price
…在任何情况下,都不应使用“==”而应使用“equals()
filter(List purchaseList, List salesList){
  for(ItemPurchase purchaseObj:purchaseList){
    //process the objects according to your requirement
  }
}