java调用带对象参数的存储过程

java调用输入、输出参数为对象的存储过程

天大地大妈咪最大 提交于 2020-04-11 17:26:08
//得到connection OracleDataSource ods = new OracleDataSource(); ods.setURL("jdbc:oracle:thin:apps/apps@10.70.42.106:11501:zjprd"); Connection conn = ods.getConnection(); //此处PER_ABSENCE_ATTENDANCES_OBJ为存储过程定义的输入参数对象 StructDescriptor sd = StructDescriptor.createDescriptor("PER_ABSENCE_ATTENDANCES_OBJ", conn); //此处的obj为根据要出入的oracle参数对象,实例化的一个java对象数组 如:Object[] obj = new Object[]{new Timestamp(),"hahaha",new Integer(1)} STRUCT perAbsenceAttendancesObj = new STRUCT(sd, conn, obj); //这里代码的作用是把“解释”完的java对象进一步解释为“oracle数组对象” ArrayDescriptor ad = ArrayDescriptor.createDescriptor("PER_ABSENCE