`

JDBC将结果封装成一个List或Map

    博客分类:
  • J2SE
阅读更多

需要的jar包,第一要相应的数据库连接的jar包,第二就是commons-dbutils-1.3.jar                  先看List
package www.libinxuan.dbutils;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.List;
import java.util.Map;

import org.apache.commons.dbutils.DbUtils;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.BeanListHandler;

public class BeanListExample {
	
	public static void main(String[] args){
		DbUtils.loadDriver("com.mysql.jdbc.Driver");
		String url = "jdbc:mysql://localhost:3306/usertable" ;
		String sql = "select * from user";
		
		try {
			Connection conn = DriverManager.getConnection(url,"root","root");
			QueryRunner qr = new QueryRunner();
			List results = (List)qr.query(conn, sql, new BeanListHandler<User>(User.class));
			DbUtils.close(conn);
			User user = null;
			for(int i=0; i<results.size(); i++){
				user = (User)results.get(i);
				System.out.println("用户名: " + user.getUsername());
				System.out.println("密码: " + user.getPassword());
			}
			
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	
}
 Map
package www.libinxuan.dbutils;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.List;
import java.util.Map;

import org.apache.commons.dbutils.DbUtils;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.MapListHandler;

public class MapListExample {
	
	public static void main(String[] args){
		DbUtils.loadDriver("com.mysql.jdbc.Driver");
		String url = "jdbc:mysql://localhost:3306/usertable" ;
		String sql = "select * from user";
		
		try {
			Connection conn = DriverManager.getConnection(url,"root","root");
			QueryRunner qr = new QueryRunner();
			List results = (List)qr.query(conn, sql, new MapListHandler());
			DbUtils.close(conn);
			for(int i=0; i<results.size(); i++){
				Map map = (Map)results.get(i);
				System.out.println("用户名: " + map.get("username"));
				System.out.println("密码: " + map.get("password"));
			}
			
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	
}
 User类
package www.libinxuan.dbutils;

public class User {
	private String username;
	private String password;
	public String getUsername() {
		return username;
	}
	public void setUsername(String username) {
		this.username = username;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
}
 

分享到:
评论

相关推荐

    jdbc 连接数据库封装类,可返回map,或者vo(自用)

    这类库通常会提供方便的方法来执行SQL查询,获取结果集并将其转换为Map对象或VO(Value Object)对象,以便于数据处理和业务逻辑操作。 在描述中提到的“NULL 博文链接:https://taoge-tony.iteye.com/blog/1973356...

    封装jdbc,采用Map方式快速增删改数据库例子

    `BaseDao`类就是这样一个封装的例子,它可能包含以下方法: 1. **获取数据库连接**:`getConnection()`方法通常负责加载数据库驱动并建立连接。这可以通过`DriverManager.getConnection()`完成,需要提供数据库URL...

    JDBC的封装

    JDBC的封装,(含预编译,结果集等),执行DML有参、执行DML无参、执行DQL无参及有参

    Java-JDBC【之】数据类型、封装JDBCUtil、封装通用增删改、ResultSet与ResultSetMetaData

    Java-JDBC【之】数据类型、封装JDBCUtil、封装通用增删改、ResultSet与ResultSetMetaData、查询结果集映射Map与ListMap 1.数据类型 2.封装通用增删改 2.1.封装JDBCUtil 2.2.封装Dao通用增删改 2.3.测试 3.ResultSet...

    javaBean自动生成工具,jdbc连接池封装

    "支持Resultset转List JavaBean对象"表示JDBCUtils工具类可能还包含了将数据库查询结果(ResultSet)转化为JavaBean对象集合(List)的功能。这通常涉及到迭代ResultSet,为每个记录创建一个新的JavaBean实例,并...

    ResultSet 转为listmap

    2. 便于数据展示:List&lt;Map&gt; 可以方便地将查询结果集展示在 GUI 组件中,如 JTable、DataGridView 等。 在实际开发中,我们可以根据需要对 ResultSetToList 方法进行修改和扩展,以满足不同的业务需求。 知识点: ...

    JDBC数据操作封装

    本篇文章将详细讲解如何利用JDBC进行数据操作封装,包括增删查改(CRUD)的基本操作,以及如何对多条数据进行事务处理,并将结果返回到对象集合和List中。 首先,我们需要理解JDBC的基本步骤: 1. **加载驱动**:...

    JDBC操作 简单封装

    4. 结果集处理:封装对ResultSet的遍历和转换,可以将结果集中的数据转化为Java对象,比如List或单个实体类,简化数据获取的逻辑。 5. 异常处理:统一捕获和处理JDBC操作中可能出现的SQLException,避免异常传播到...

    jdbc完全封装实现增删改查

    实现完全的对jdbc对象的封装,只需调用则可对数据库进行CRUD操作

    JDBC封装的工具类

    JDBC封装的工具类,将所有共同的代码提取过来,形成工具类

    java增删改查JDBC封装类(泛型封装)

    "java增删改查JDBC封装类(泛型封装)"这个主题是关于如何利用泛型来优化JDBC操作,以提高代码的可读性、安全性和复用性。以下将详细讲解这个主题涉及的知识点。 1. **JDBC基础**: - JDBC是Java中连接数据库的标准...

    jdbc封装(实现对实体的增删改查[分页]).zip

    jdbc封装(实现对实体的增删改查[分页]),辅助学习Hibernate 包含三个文件夹,分别是: code-access实现 是用access实现的,本意是access方便,就一个文件,方便部署。但access有好多不支持,就写成这样.主要是可参考Dao...

    jdbc-utils.rar_Utils_jdbc_jdbc封装

    "jdbc-utils.rar_Utils_jdbc_jdbc封装"这个压缩包提供了一些工具类,用于简化JDBC操作,提高代码的可读性和可维护性。下面我们将详细探讨JDBC封装处理类的原理和实现。 1. **JDBC基础** - JDBC API包括一组Java...

    jdbc封装工具类

    jdbc封装工具类,此类事封装成list&lt;Map,Object&gt;&gt;格式,可直接把转换为jsonArray格式传输数据。

    自己封装的JDBC

    “工具”可能指的是这个封装的JDBC可以作为项目开发的一个实用工具。 由于没有提供具体的压缩包文件内容,无法进一步分析其内部实现。但根据提供的信息,我们可以理解这个压缩包可能包含了一个自定义的JDBC封装库的...

    List<Map>转化为List工具类

    一般使用springjdbc、hibernate的sql查询,库获取到的数据都是List&lt;Map, Object&gt;&gt;结果集,如果我们要转化为JavaBean,则需要做一系列的map.get(),然后obj.set()。 此工程中就是解决List&lt;Map, Object&gt;&gt;转化为...

    对jdbc的封装的总结

    本文将深入探讨对JDBC的封装,旨在提高数据库操作的效率、易用性和可维护性。 首先,理解JDBC的基本流程至关重要。通常包括以下步骤: 1. 加载驱动:使用`Class.forName()`方法加载数据库驱动,使得Java程序能够与...

    JDBC-用元数据将结果集封装为List对象[归类].pdf

    它可能包含了一个或多个方法,利用`DatabaseMetaData`和`ResultSetMetaData`来获取并展示数据库或结果集的元信息。 总结来说,JDBC中的元数据功能对于数据库操作非常重要,它们帮助开发者了解数据库的特性和结果集...

    Java连接数据库 JDBC封装类 带使用例子

    Java JDBC封装类,带增删改查例子,支持oracle,MySql,hsqldb 等,支持事务,返回数据格式 支持二维数组,MAP格式,以及javabean对象。有利于初学者DbDemo.java为demo,Connect为jdbc封装类,可以作为项目共通类使用。

    SpringBoot中封装jdbc工具类

    现在的数据层的开发,大多会使用如MyBatis或...由于部分场景下MyBatis或JPA之类无法满足我的需求,所以我打算自己封装一套查数据库的工具类。 文章地址: https://blog.csdn.net/lxyoucan/article/details/124042295

Global site tag (gtag.js) - Google Analytics