Java作为一门高性能、面向对象的编程语言,早在上个世纪90年代就已经成为了业界热门。因其良好的内存管理、跨平台的优势,现在还是大数据处理、Web后端开发的一大主流。在这篇文章中,我们将讲述在Java Web应用中如何使用JDBC连接数据库并进行一些简单的操作。
一、导入必要的包
在Java中连接数据库需要通过JDBC来实现,而JDBC则需要导入对应的MySQL或Oracle的驱动。在使用JDBC时,先将驱动包加载进来:
import java.sql.*;
二、连接数据库
连接数据库分为四个步骤:
1. 加载JDBC驱动程序:
Class.forName("com.mysql.jdbc.Driver");
2. 创建数据库的连接:
Connection conn = DriverManager.getConnection(url, user, password);
3. 创建一个Statement:
Statement stmt = conn.createStatement();
4. 执行SQL语句:
ResultSet rs = stmt.executeQuery(sql);
三、执行SQL语句
有两种执行SQL语句的方式:
1. Statement
Statement对象用于向数据库发送简单的一般性SQL语句。
String sql = "select * from student where id = 123"; ResultSet rs = stmt.executeQuery(sql); while (rs.next()) { String name = rs.getString("name"); int age = rs.getInt("age"); // ... }
2. PreparedStatement
PreparedStatement对象用于向数据库发送预编译的SQL语句。
String sql = "select * from student where id = ?"; PreparedStatement ps = conn.prepareStatement(sql); ps.setInt(1, 123); ResultSet rs = ps.executeQuery(); while (rs.next()) { String name = rs.getString("name"); int age = rs.getInt("age"); // ... }
四、关闭资源
连接数据库等资源使用完后,需要关闭资源。关闭顺序为:ResultSet -> Statement -> Connection。关闭资源代码如下:
if (rs != null) { try { rs.close(); } catch (SQLException ex) { ex.printStackTrace(); } } if (stmt != null) { try { stmt.close(); } catch (SQLException ex) { ex.printStackTrace(); } } if (conn != null) { try { conn.close(); } catch (SQLException ex) { ex.printStackTrace(); } }
五、完整示例代码
下面是一个完整的Java JDBC连接MySQL数据库并取出数据的示例代码:
import java.sql.*; public class MysqlJdbcDemo { static final String JDBC_DRIVER = "com.mysql.jdbc.Driver"; static final String DB_URL = "jdbc:mysql://localhost:3306/mydatabase"; static final String USER = "root"; static final String PASS = "root"; public static void main(String[] args) { Connection conn = null; Statement stmt = null; ResultSet rs = null; try { Class.forName(JDBC_DRIVER); conn = DriverManager.getConnection(DB_URL, USER, PASS); stmt = conn.createStatement(); String sql = "SELECT id, name, age FROM student"; rs = stmt.executeQuery(sql); while (rs.next()) { int id = rs.getInt("id"); String name = rs.getString("name"); int age = rs.getInt("age"); System.out.println("id: " + id + ", name: " + name + ", age: " + age); } } catch (SQLException se) { se.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } finally { try { if (rs != null) rs.close(); } catch (SQLException se2) { } try { if (stmt != null) stmt.close(); } catch (SQLException se2) { } try { if (conn != null) conn.close(); } catch (SQLException se) { se.printStackTrace(); } } } }
在上述代码中,我们使用了MySQL数据库作为数据源,我们也可以使用Oracle等其他数据库,只需要将对应的驱动包导入项目即可。
总结
以上就是使用Java JDBC连接数据库并进行简单操作的步骤和示例代码。通过这篇文章的阅读,希望读者可以对Java JDBC有一个更好的了解,从而应用到实际开发工作中。