The Statement.setQueryTimeout()
method set the limit in seconds for query execution time. The execution has no timeout limit when the value is set to zero.
package org.kodejava.jdbc;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.SQLException;
import java.sql.DriverManager;
public class QueryTimeout {
private static final String URL = "jdbc:mysql://localhost/kodejava";
private static final String USERNAME = "kodejava";
private static final String PASSWORD = "s3cr*t";
public static void main(String[] args) {
try (Connection connection =
DriverManager.getConnection(URL, USERNAME, PASSWORD)) {
Statement stmt = connection.createStatement();
// Sets the number of seconds the driver will wait for
// a statement object to execute to the given number of
// seconds. If the limit is exceeded, an SQLException
// is thrown.
stmt.setQueryTimeout(60);
// Execute sql query
ResultSet rs = stmt.executeQuery("select * from product");
while (rs.next()) {
System.out.println("code: " + rs.getString("code") +
", product: " + rs.getString("name") +
", price: " + rs.getDouble("price"));
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
Maven Dependencies
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
<version>8.4.0</version>
</dependency>
Latest posts by Wayan (see all)
- How do I get number of each day for a certain month in Java? - September 8, 2024
- How do I get operating system process information using ProcessHandle? - July 22, 2024
- How do I sum a BigDecimal property of a list of objects using Java Stream API? - July 22, 2024
Thank you.