HashMap with select Query data returning

    public HashMap<String ,Object> getDelvInfoFromDb(BigDecimal pacctcntrlno) {
        PreparedStatement sqlProcStmt2=null;
        ResultSet rs=null;   
        String sqlproc2 = "select comp_code,unit_code,delv_type,delv_dt,delv_no,acct_no from pos_delivery_hdr where  acct_cntrl_no = ?  and rownum = 1";
        sqlProcStmt2 = CommonCode.getAM().getDBTransaction().createCallableStatement(sqlproc2, 0);
        HashMap<String ,Object> hm = new HashMap<String, Object>();
        try {
            sqlProcStmt2.setBigDecimal(1, pacctcntrlno);
            rs= sqlProcStmt2.executeQuery();
            if(rs.next()){ 
            hm.put("compCode", rs.getString(1));
            hm.put("unitCode", rs.getString(2));
            hm.put("delvType", rs.getString(3));
            hm.put("delvDate", rs.getDate(4));
            hm.put("delvNo", rs.getBigDecimal(5));
            hm.put("acctNo", rs.getString(6));
            }
        } catch (SQLException e) {         
            e.printStackTrace();
            System.out.println(e.getMessage());
            }finally{
            try{
            if (sqlProcStmt2!=null&&!sqlProcStmt2.isClosed())
                sqlProcStmt2.close();
                if (rs!=null&&!rs.isClosed())
                    rs.close();
            }catch(Exception e){
                e.printStackTrace();
                }
        }

        return hm;
    }


to use

        HashMap<String,Object> hm1=getDelvInfoFromDb(vacctcntrlno);  //getDelvInfoFromDb(vacctcntrlno).get("compCode")
        System.out.println(hm1.get("compCode")+" "+hm1.get("unitCode")+" "+hm1.get("delvType"));
        System.out.println( hm1.get("delvDate")+" "+hm1.get("delvNo")+" "+hm1.get("acctNo"));

Comments