[java] view plaincopyprint?String sql= "call prc_querySpecialPax(?,?,?)" ;
OracleConnection con = ( OracleConnection) mydataSource .getConnection();
StructDescriptor structdesc = new StructDescriptor( "TYPE_SPECIALPAX" , con);
Object[] paramObj = new Object[21];
paramObj[0]=pax.getPaxName()+ "" ;
paramObj[1]=pax.getPsgGender()+ "" ;
paramObj[2]=pax.getFlightNo()+ "" ;
paramObj[3]=pax.getOrgCityAirp()+ "" ;
paramObj[4]=pax.getDstCityAirp()+ "" ;
paramObj[5]=pax.getLclDptDate()== null ?null : new Date(pax.getLclDptDate().getTime());
paramObj[6]=pax.getLclDptDate_e()== null ?null : newDate(pax.getLclDptDate_e().getTime());
paramObj[7]=pax.getSpecialCode();
paramObj[8]=pax.getIdNo()+ "" ;
paramObj[9]=pax.getSpecialAuditResult()+ "" ;
paramObj[10]=pax.getIsCd()+ "" ;
paramObj[11]=pax.getIsOther()+ "" ;
paramObj[12]=pax.getPnr()+ "" ;
paramObj[13]=pax.getSpeType()+ "" ;
paramObj[14]=pax.getIsCancel()+ "" ;
paramObj[15]=pax.getLocalStd()== null ?null : newDate(pax.getLocalStd().getTime());
paramObj[16]=pax.getLocalStd2()== null ?null : newDate(pax.getLocalStd2().getTime());
paramObj[17]=pax.getSort()+ "" ;
paramObj[18]=pax.getOrder()+ "" ;
paramObj[19]=page;
paramObj[20]=rows;
STRUCT s= new STRUCT(structdesc, con, paramObj);
OracleCallableStatement proc=(OracleCallableStatement)con.prepareCall(sql);
ResultSet rs= null ;
proc.setSTRUCT(1, s);
proc.registerOutParameter(2, Types. VARCHAR );
proc.registerOutParameter(3, oracle.jdbc.OracleTypes.CURSOR );
proc.execute();
String sqlSt=proc.getString(2);
rs=(ResultSet)proc.getObject(3);
List paxinfos= new ArrayList();
AutoSpecialPaxInfo paxInfo= null ;
while (rs.next())
{
.....
}
rs.close();
con.close();