将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();
            }
        }
    }

 

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
将`list<map>`转换为`ResultSet`需要一些手动的操作,因为它们是不同的数据类型。以下是一个示例代码,展示如何将`list<map>`转换为`ResultSet`: ```java import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.sql.Connection; import java.sql.DriverManager; import java.util.List; import java.util.Map; public class ListMapToResultSet { public static void main(String[] args) throws SQLException { // 假设你已经有一个包含要转换的数据的 List<Map<String, Object>> 对象 List<Map<String, Object>> data = ...; // 假设这是你的 list<map> 数据 // 创建一个内存数据库连接 Connection conn = DriverManager.getConnection("jdbc:h2:mem:"); // 创建一个用于执行 SQL 语句的 Statement 对象 Statement statement = conn.createStatement(); // 创建一个内存表,用于存储数据 statement.executeUpdate("CREATE TABLE myTable (column1 VARCHAR, column2 VARCHAR)"); // 将 list<map> 的数据插入到内存表 for (Map<String, Object> row : data) { StringBuilder sb = new StringBuilder(); sb.append("INSERT INTO myTable ("); for (String key : row.keySet()) { sb.append(key).append(","); } sb.deleteCharAt(sb.length() - 1); // 删除最后一个逗号 sb.append(") VALUES ("); for (Object value : row.values()) { sb.append("'").append(value).append("',"); } sb.deleteCharAt(sb.length() - 1); // 删除最后一个逗号 sb.append(")"); statement.executeUpdate(sb.toString()); } // 执行查询语句 ResultSet resultSet = statement.executeQuery("SELECT * FROM myTable"); // 现在你可以使用 resultSet 对象来操作结果了 while (resultSet.next()) { String column1 = resultSet.getString("column1"); String column2 = resultSet.getString("column2"); // 处理每一行数据 } // 关闭连接 statement.close(); conn.close(); } } ``` 请确保你的项目已经添加了相应的 JDBC 驱动程序,以便与数据库进行交互。这只是一个示例代码,你可能需要根据你的实际需求进行调整。希望这能帮到你!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值