刚毕业出来直接进项目组,压力巨大求教各位大师说明下要实现的功能:
自定义列表=自定义标签;
默认我们在打开网页的时候会给3个标签,
但是因为标签总数有20多个 所以我们给出自定义标签的功能代码如下:
这是一段从数据库里取数据并放进map里面的一段代码问题是:这里为什么要定义两个结果集?
第一个结果集里面存放的是什么?
第二个又是什么?
这里为什么数据库要关闭两次?
ShowColumn是一个javabean类,里面定义了属性和方法
public static ShowColumn getShowColumn(String module,String userId ){
String sqlDefault="select column_id from EDU_COMMON_CUSTOMLIST where module='"+module+"' and user_id is null order by ord asc";
String sql="select column_id from EDU_COMMON_CUSTOMLIST where module='"+module+"' and user_id='"+userId+"' order by ord asc";
DBTool dbTool = DBAccess.getDBTool();
ResultSet rs = dbTool.querySql(JBaseSymbol.dbSource, sql);
ResultSet rs2 = null;
//如果用户没有自定义列表,则启动默认列表 ShowColumn showColumn=new ShowColumn();
List col=new ArrayList();
List name=new ArrayList();
Map coldic=new HashMap();
Map colname=new HashMap(); try {
while(null!=rs && rs.next()){
String column=rs.getString(1);
String[] c=column.split(",");
col.add(c[0]);
name.add(c[1]);
colname.put(c[0], c[1]);
if(c.length==3){
coldic.put(c[0],c[2]);
}else{
coldic.put(c[0],"");
}
}
JDBCUtil.close(rs,null,null);
if(null==col || col.size()<=0){
rs2=dbTool.querySql(JBaseSymbol.dbSource, sqlDefault);
while(null!=rs2 && rs2.next()){
String column=rs2.getString(1);
String[] c=column.split(",");
col.add(c[0]);
name.add(c[1]);
colname.put(c[0], c[1]);
if(c.length==3){
coldic.put(c[0],c[2]);
}else{
coldic.put(c[0],"");
}
}
JDBCUtil.close(rs2,null,null);
}
showColumn.setCol(col);
showColumn.setName(name);
showColumn.setColdicMap(coldic);
showColumn.setColnameMap(colname);
} catch (SQLException e) {
e.printStackTrace();
}finally{
JDBCUtil.close(rs,null,null);
JDBCUtil.close(rs2,null,null);
}
return showColumn;
}