原以为 statement的executequery()会将所有结果返回。
比如
Statement stmt = null;
String query = "select * from tab1";
try {
stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(query);
之前以为,执行到这里时,数据已经保存在变量rs中,如果数据量很大,会把内存撑爆;
经过最近的一次测试发现,其实rs中只保存少量数据(如10条),其他数据依旧只在数据库服务器中,
通过rs.next()少量数据取完后,才会从数据库取数据到本地;并且rs.next()速度非常快,多个线程处理时,从服务器获取数据的速度非常惊人,经测试,速度的瓶颈在于网络带宽。
应用该特点,可以实现单表数据的快速导出
后记:今天在mysql测了一下,发现事情又并非如此,执行executeQuery函数的时候,所有数据会全部加载
分享到:
相关推荐
本资源主要涵盖了使用JDBC PrepareStatement进行MySQL数据库操作的各种场景,包括基本的查询、更新以及批量处理。 首先,我们来看一下JDBC连接MySQL的步骤。在Java程序中,我们需要导入相应的JDBC驱动,例如`...
在实际开发中,为了提高效率和安全性,我们通常会使用PreparedStatement接口来代替Statement接口。 1. **PreparedStatement简介** PreparedStatement是Statement的一个子接口,它的主要优势在于预编译。预编译的...
要使用JDBC,我们需要在程序中加载对应的数据库驱动,通常通过`Class.forName()`方法完成。例如,对于MySQL,我们可能会写入`Class.forName("com.mysql.jdbc.Driver")`。 建立连接后,我们需要通过`DriverManager....
把JDBC应用改成JPA程序,需要把原来通过JDBC API访问数据库的代码替换成使用JPA代码。 JDBC访问数据库的主要工作包括:  得到JDBC驱动程序;  使用DriverManager,Connection,Statement,ResultSet等...
JavaJDBC的视频,通过Statement执行更新操作,视频里详细描述如何编写这部分的代码。
在上面的代码中,首先获取数据库连接,然后使用 Connection 对象的 createStatement 方法获取 Statement 对象。接着,调用 Statement 对象的 executeUpdate 方法执行 SQL 语句以修改数据库中的数据。最后,关闭 ...
jdbc中preparedStatement比Statement的好处
本教程将详细讲解如何在Java程序中使用JDBC与MySQL数据库进行交互,主要包括以下几个关键步骤: 1. **加载JDBC驱动程序**: 在Java程序中,我们需要首先加载MySQL的JDBC驱动,这通常通过`Class.forName()`方法完成...
- **JDBC在JSP中的使用**:通常在JSP中编写SQL语句并不推荐,而是将数据访问逻辑放在Servlet或JavaBean中,然后在JSP中展示结果。 - **JSTL(JavaServer Pages Standard Tag Library)**:可以使用JSTL的SQL标签库...
现在的数据层的开发,大多会使用如MyBatis或JPA之类的开发工具。这些开发工具给我们的开发过程中带来了极大的便利。 但是在一些极端的场景下往往原生的jdbc方式操作数据库更灵活,性能更高。由于部分场景下MyBatis或...
JDBC 中 Statement 和 PrepareStatement 的使用讲解 Statement 对象是用来执行 SQL 语句的接口,提供了基本的 SQL 语句执行功能。PrepareStatement 是 Statement 的子接口,提供了预编译的功能,可以提高性能和安全...
3. 创建 Statement 对象:使用 `Connection` 对象的 `createStatement()` 方法创建一个 Statement 对象。 4. 执行 SQL 语句:使用 Statement 对象的 `executeQuery()` 或 `executeUpdate()` 方法执行 SQL 语句。 5. ...
Java Database Connectivity (JDBC) 是Java平台中用于与各种数据库进行交互的标准API。它允许Java程序通过编写SQL语句来访问和处理数据库数据。本篇文章将深入探讨JDBC的基础知识,包括连接数据库、执行SQL语句、...
Java面试题34.jdbc中preparedStatement比Statement的好处.mp4
* 插入数据:使用 JDBC 的 Statement 或 PreparedStatement 对象可以插入数据。插入数据需要指定要插入的数据表和字段,然后使用 executeUpdate() 方法执行插入操作。 * 修改数据:使用 JDBC 的 Statement 或 ...
Java应用程序使用`Class.forName()`方法加载特定数据库的JDBC驱动,然后通过`DriverManager.getConnection()`创建数据库连接。 2. **数据库连接(Connection)**:连接代表了Java应用程序与数据库之间的会话。一旦...
在Java的JDBC(Java Database Connectivity)中,`Statement`和`CallableStatement`对象是用于执行SQL语句的关键组件。这两个接口提供了与数据库交互的方法,允许程序员执行查询、更新和其他数据库操作。 首先,...
JDBC 连接数据库方法...JDBC 连接数据库的方法可以分为四个步骤:加载 JDBC 驱动程序、提供 JDBC 连接的 URL、创建数据库的连接、创建一个 Statement。通过这四个步骤,开发者可以轻松地连接数据库并执行 SQL 语句。
3. 创建 Statement 对象:使用 `Connection` 对象创建 `Statement` 对象,例如 `createStatement()` 方法。 4. 执行 SQL 语句:使用 `Statement` 对象执行 SQL 语句,例如 `executeUpdate()` 方法。 5. 关闭资源:...