public List getGroupList(int userId,String queryname,String parentID,int range){
List list=new ArrayList();
String sql="select * from table(QXT_ADDR.GetGroup('"+String.valueOf(userId)+"','"+String.valueOf(queryname)+"','"+String.valueOf(parentID)+"',"+range+"))";
System.out.println(sql);
try {
list = this.dbOperate(sql);
} catch (SQLException e) {
e.printStackTrace();
}
return list;
}
private List dbOperate(String sql) throws SQLException{
List list = new ArrayList();
Connection conn=DataSource.getConnection();
psmt=conn.prepareStatement(sql);
rs=psmt.executeQuery();
try{
while(rs.next()){
Group group = new Group();
group.setGroup_id(rs.getString("GROUP_ID"));
group.setGname(rs.getString("GNAME"));
group.setContact_count(rs.getString("CONTACT_COUNT"));
group.setSub_group_count(rs.getString("SUB_GROUP_COUNT"));
list.add(group);
}
}catch(Exception ex){
ex.printStackTrace();
}finally{
DataSource.close(conn,proc,psmt,rs);
if (errexception!=null)
try {
throw errexception;
} catch (ErrException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return list;
}
对应的存储过程如下:
function GetGroup(i_USER_ID integer,
i_GROUPNAME varchar2,
i_PARENT_ID varchar2,
i_RANGE integer) return qxt_group_table pipelined;