Java 如何使用hashmap编写相同的代码

Java 如何使用hashmap编写相同的代码,java,Java,如何使用hashmap或map编写相同的代码。这样我就可以在表中检索值 Class.forName("oracle.jdbc.driver.OracleDriver"); Connection con=DriverManager.getConnection("jdbc:Oracle:thin:@localhost:1521:IHDB","pummy","pummy"); PreparedStatement ps=con.prepare

如何使用hashmap或map编写相同的代码。这样我就可以在表中检索值

        Class.forName("oracle.jdbc.driver.OracleDriver");   
        Connection con=DriverManager.getConnection("jdbc:Oracle:thin:@localhost:1521:IHDB","pummy","pummy");   

        PreparedStatement ps=con.prepareStatement("select workitemid,empname,salary from emp where product_id=? and operation_id=?");   
        ps.setInt(1,prod_id);
        ps.setInt(2,opn_id);
        ResultSet rs=ps.executeQuery();   
        System.out.println("ProdId: "+prod_id);
         System.out.println(rs);
         while(rs.next())
            {
                BigDecimal workitemid = rs.getBigDecimal(1);
                String empname=(String) rs.getString(2);
                int salary= rs.getInt(3);
              }

我认为结构化的方法是创建
Employee pojo类
,如下所示-

public class Employee{
   public BigDecimal workitemid;
   public String empName;   
   public int salary;
   <getter & setter>
}
给你

PreparedStatement ps=con.prepareStatement("select workitemid,empname,salary from emp where product_id=? and operation_id=?");   
            ps.setInt(1,prod_id);
            ps.setInt(2,opn_id);
            ResultSet rs=ps.executeQuery();   
            System.out.println("ProdId: "+prod_id);
            Map<BigDecimal,Employee> empMap= new HashMap<BigDecimal,Employee>();
             System.out.println(rs);
             while(rs.next())
                {
                  Employee emp = new Employee();
                  emp.setWorkItemId = rs.getBigDecimal(1);
                  emp.setEmpName(rs.getString(2));
                  emp.setSalary(rs.getInt(3));
                  empMap.put(emp.getWorkItemId,emp);


                  }

    private class Employee{
      private String empName;
      private int salary;
      private BigDecimal workItemId;
     //getters and setters

    }
PreparedStatement ps=con.prepareStatement(“从emp中选择工作项目id、empname、工资,其中产品id=?和操作id=?”;
ps.setInt(1,产品id);
ps.setInt(2,opn_id);
结果集rs=ps.executeQuery();
System.out.println(“ProdId:+prod_id”);
Map empMap=newhashmap();
系统输出打印项次(rs);
while(rs.next())
{
员工emp=新员工();
emp.setWorkItemId=rs.getBigDecimal(1);
emp.setEmpName(rs.getString(2));
环境管理局秘书长(rs.getInt(3));
empMap.put(emp.getWorkItemId,emp);
}
私家班员工{
私有字符串名称;
私人薪酬;
私有BigDecimal工作项ID;
//接球手和接球手
}
PreparedStatement ps=con.prepareStatement(“从emp中选择工作项目id、empname、工资,其中产品id=?和操作id=?”);
ps.setInt(1,产品id);
ps.setInt(2,opn_id);
结果集rs=ps.executeQuery();
System.out.println(“ProdId:+prod_id”);
系统输出打印项次(rs);
Map employees=newhashmap();
while(rs.next())
{
BigDecimal workitemid=rs.getBigDecimal(1);
字符串empname=(String)rs.getString(2);
int工资=rs.GEINT(3);
员工=新员工(workitemid、empname、薪水);
employees.put(workitemid,employee);
}
//对象以保存有关员工的信息并能够使用地图。
公营雇员
{
私有BigDecimal工作项ID;
私有字符串名称;
私人薪酬;
//建造师
公共雇员(BigDecimal workitemid、字符串empName、整数工资)
{
this.workitemid=workitemid;
this.empName=empName;
这个。薪水=薪水;
}
//workitemid、empName、salary的setter和getter方法。
}

<代码>我猜你想返回一个<代码>列表>代码>你认为任何发布的答案都是正确答案吗?如果是,请投票。
PreparedStatement ps=con.prepareStatement("select workitemid,empname,salary from emp where product_id=? and operation_id=?");   
            ps.setInt(1,prod_id);
            ps.setInt(2,opn_id);
            ResultSet rs=ps.executeQuery();   
            System.out.println("ProdId: "+prod_id);
            Map<BigDecimal,Employee> empMap= new HashMap<BigDecimal,Employee>();
             System.out.println(rs);
             while(rs.next())
                {
                  Employee emp = new Employee();
                  emp.setWorkItemId = rs.getBigDecimal(1);
                  emp.setEmpName(rs.getString(2));
                  emp.setSalary(rs.getInt(3));
                  empMap.put(emp.getWorkItemId,emp);


                  }

    private class Employee{
      private String empName;
      private int salary;
      private BigDecimal workItemId;
     //getters and setters

    }
    PreparedStatement ps=con.prepareStatement("select workitemid,empname,salary from emp where product_id=? and operation_id=?");   
    ps.setInt(1,prod_id);
    ps.setInt(2,opn_id);
    ResultSet rs=ps.executeQuery();   
    System.out.println("ProdId: "+prod_id);
    System.out.println(rs);

    Map<BigDecimal, Employee> employees = new HashMap<BigDecimal, Employee>();        

    while(rs.next())
       {
           BigDecimal workitemid = rs.getBigDecimal(1);
           String empname=(String) rs.getString(2);
           int salary= rs.getInt(3);
           Employee employee = new Employee(workitemid, empname, salary);

           employees.put(workitemid , employee);
       }

 //object to hold information about an employee and to be able to use a map.
    public class Employee
    {
    private BigDecimal workitemid;
    private String empName;   
    private int salary;

    //constructor
    public Employee(BigDecimal workitemid, String empName, int salary)
    {
      this.workitemid = workitemid;
      this.empName = empName;
      this.salary = salary;
    }


    //setters and getter methods for workitemid, empName, salary.
    }