java maplisthandler_DBUtils MapListHandler类

org.apache.commons.dbutils.MapListHandler是ResultSetHandler接口的实现,负责将ResultSet行转换为Maps列表。 这个类是线程安全的。

类声明

以下是org.apache.commons.dbutils.MapListHandler类的声明 -

public class MapListHandler

extends AbstractListHandler>

用法

第1步 - 创建一个连接对象。

第2步 - 将ResultSetHandler实现为MapListHandler对象。

第3步 - 将resultSetHandler传递给QueryRunner对象,并进行数据库操作。

示例

以下示例将演示如何使用ArrayListHandler类读取记录。 我们将读取Employees表中的一条记录,并将其映射到Employee bean。

语法

List> result = queryRunner.query(conn, "SELECT * FROM employees", new MapListHandler());

其中

resultHandler - MapListHandler对象将结果集映射到Map列表。

queryRunner - QueryRunner对象从数据库中读取Employee对象。

为了理解上述与DBUtils相关的概念,让我们编写一个将运行读取查询的示例。 创建一个示例应用程序。

更新在DBUtils入门程序中创建的文件:MainApp.java 。

编译并运行应用程序,如下所述。

以下是Employee.java的内容。

public class Employee {

private int id;

private int age;

private String first;

private String last;

public int getId() {

return id;

}

public void setId(int id) {

this.id = id;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

public String getFirst() {

return first;

}

public void setFirst(String first) {

this.first = first;

}

public String getLast() {

return last;

}

public void setLast(String last) {

this.last = last;

}

}

以下是MainApp.java文件的内容。

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 MainApp {

// JDBC driver name and database URL

static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";

static final String DB_URL = "jdbc:mysql://localhost:3306/emp";

// Database credentials

static final String USER = "root";

static final String PASS = "admin";

public static void main(String[] args) throws SQLException {

Connection conn = null;

QueryRunner queryRunner = new QueryRunner();

//Step 1: Register JDBC driver

DbUtils.loadDriver(JDBC_DRIVER);

//Step 2: Open a connection

System.out.println("Connecting to database...");

conn = DriverManager.getConnection(DB_URL, USER, PASS);

try {

List> result

= queryRunner.query(conn, "SELECT * FROM employees", new MapListHandler());

System.out.println(result);

} finally {

DbUtils.close(conn);

}

}

}

完成创建源文件后,让我们运行该应用程序。 如果应用程序一切正常,它将打印下面的消息。

Connecting to database...

[{id=100, age=18, first=Zara, last=Ali},

{id=101, age=25, first=Mahnaz, last=Fatma},

{id=102, age=30, first=Zaid, last=Khan},

{id=103, age=33, first=Sumit, last=Mittal}]

¥ 我要打赏

纠错/补充

收藏

加QQ群啦,易百教程官方技术学习群

注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值