原生JDBC操作

本文详细介绍使用原生JDBC进行数据库操作的方法,包括连接数据库、执行SQL语句、处理查询结果集及增删改操作。通过具体示例,深入解析如何利用PreparedStatement和ResultSet进行高效的数据交互。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原生JDBC操作结果集

Class.forName(className);
			Connection con = DriverManager.getConnection(jdbcUrl, username, password);
			PreparedStatement prepareStatement = con.prepareStatement(sql);
			if((sql.contains("select")&&sql.contains("from")) || (sql.contains("SELECT")&&sql.contains("FROM"))) {
				ResultSet resultSet = prepareStatement.executeQuery();
				ResultSetMetaData metaData = resultSet.getMetaData();
				 LinkedHashMap<String, Object> map = null;
				 //所有结果集
				 List<LinkedHashMap<String ,Object>> list=new ArrayList<>();
		            while (resultSet.next()) {
		                //把一条记录放入Map中
		                map = new LinkedHashMap<String, Object>();
		                for (int i = 0; i < metaData.getColumnCount(); i++) {
		                    String columnLabel = metaData.getColumnLabel(i + 1);
		                    Object value = resultSet.getObject(i + 1);
		                    map.put(columnLabel, value);
		                }
		                list.add(map);
		               System.out.println(map);
		               //所有表字段
		               List<String> titleList=new ArrayList<>();
		               LinkedHashMap<String,Object> linkedHashMap = list.get(0);
		               Set<String> keySet = linkedHashMap.keySet();
		               Iterator<String> iterator = keySet.iterator();
		               while(iterator.hasNext()) {
		            	   String key = iterator.next();
		            	   titleList.add(key);
		               }
		               model.addAttribute("title",titleList);
		               model.addAttribute("list", list);
		            }
			}else {
				//增,删,改操作
				 boolean flag = prepareStatement.execute(sql);
				 model.addAttribute("flag",flag);
			}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值