天天看点

将JDBC ResultSet 结果集放到List<Map> 中

private List<Map<String, Object>> list = new ArrayList<Map<String,Object>>();

public String findSBData(){
		
		Connection conn = null;
		Statement st = null;
		ResultSet rs = null;
		try{
			
			Class.forName("oracle.jdbc.driver.OracleDriver");
			conn = DriverManager.getConnection("jdbc_url=jdbc:oracle:thin:@127.0.0.1:1521:databasename","yonghuming","mima");
			st = conn.createStatement();
			
			StringBuffer sql = new StringBuffer();
			sql.append("SELECT * FROM sys_user");
			rs = st.executeQuery(sql.toString());
			
			if(rs != null){
				ResultSetMetaData rsmd = rs.getMetaData();//获得结果集结构信息,元数据
				int numberOfColumns = rsmd.getColumnCount();//获得列数
				while (rs.next()) {
					Map<String,Object> rowData = new HashMap<String,Object>();
					String sKey = "";
					String sValue = "";
					for(int j=1;j<=numberOfColumns;j++){
						sKey = (rsmd.getColumnName(j)).trim();
					    String tString = rs.getString(j);
					    if (tString == null){
					    	sValue = "";
					    }else {
						     sValue = tString.trim();
						     if (sValue == null) sValue = "";
					    }
					    rowData.put(sKey,sValue);
					}
					list.add(rowData);
					
				}
			}
			
		}catch (Exception e) {
			e.printStackTrace();
		}finally{
			try{
				if(rs != null) rs.close();
				if(st != null) st.close();
				if(conn != null) conn.close();
			}catch(Exception e){
				e.printStackTrace();
			}
		}
		
		return "success";
	}

public void addData(StringBuffer sql,String[] args){
        Connection conn = null;
        Statement st = null;
        try{
            Class.forName("oracle.jdbc.driver.OracleDriver");
            conn = DriverManager.getConnection("jdbc_url=jdbc:oracle:thin:@127.0.0.1:1521:databasename","yonghuming","mima");
            st = conn.createStatement();
            st.executeUpdate(sql.toString(),args);
        }catch (Exception e){
            e.printStackTrace();
        }finally{
            try{
                if(st != null) st.close();
                if(conn != null) conn.close();
            }catch(Exception e){
                e.printStackTrace();
            }
        }
    }