java从数据库读取两个字段存储到map中

如何从数据库读取两个字段存储到map中

之前自己一直接触的仅仅需要从数据库读取一个字段到java中,因此只需要定义一个动态数组ArrayList,将ResultSet中的结果存储到该动态数组中即可。而现在需要从数据库读入两个字段,在此简要描述一下如何从数据库读取两个字段的值,并存储到map中。代码如下:

try {
   		Class.forName(driver);   //加载数据库驱动
   		Connection conn=DriverManager.getConnection(URL, USER, PASSWORD);   //连接数据库
   		Statement st = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);   //
           ResultSet rs=st.executeQuery(sql);   //执行sql查询,并将查询结果存放在ResultSet结果集中
           ResultSetMetaData data = rs.getMetaData();
           List<String> tel = new ArrayList<String>();     //定义一个ArrayList,用于将结果集ResultSet中的字符串数据存放到数组tel中来
           ArrayList<HashMap<String, String>> al = new ArrayList<HashMap<String, String>>();   //定义一个ArrayList,用于将结果集ResultSet中的字符串数据存放到数组al中
           
           try {
           	while(rs.next()) {          //判断字符串是否为空
           		HashMap<String, String> map = new HashMap<String, String>();
           		if(rs.getString("aa") != null) {           
           			for(int i = 0; i <= data.getColumnCount(); i++) {
           				String k = rs.getString(1);
           				String v = rs.getString(2);
//	        		    System.out.println(k + "," + v);        //该句代码用于测试是否已根据时间范围将两个字段读取并存储到了map中
           				map.put(k, v);
           			}
            			al.add(map);
            	}
            }catch(NullPointerException e){
                 e.printStackTrace();
           }
catch(Exception e){
    e.printStackTrace();
}   

需要注意的是,程序需要添加以下包:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值