21xrx.com
2024-12-27 15:54:35 Friday
登录
文章检索 我的文章 写文章
Java数据库连接CRUD操作实现
2023-06-12 03:16:55 深夜i     --     --
Java 数据库连接 增删改查

Java语言是一种可以操作数据库的全面语言。Java数据库连接(JDBC)是Java SE的一个标准API,用于连接和操作数据库。在本文中,将介绍如何使用JDBC实现数据库的增删改查操作。

1. 连接数据库

首先,在Java中需要使用DriverManager获取数据库连接对象Connection。连接数据库需要确定三个参数:URL、用户名和密码。在本例中,我们使用MySQL数据库进行连接。代码如下所示:


import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

public class Connect {

  // JDBC 驱动名及数据库 URL

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

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

  // 数据库的用户名与密码

  static final String USER = "root";

  static final String PASS = "123456";

  public Connection connect() {

    Connection conn = null;

    try {

      // 注册 JDBC 驱动

      Class.forName(JDBC_DRIVER);

      // 打开链接

      System.out.println("连接数据库...");

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

    } catch (SQLException e) {

      // 处理 JDBC 错误

      e.printStackTrace();

    } catch (Exception e) {

      // 处理 Class.forName 错误

      e.printStackTrace();

    }

    return conn;

  }

}

2. 增加数据

一旦我们获得了数据库连接对象 Connection,我们就可以使用Statement或PreparedStatement对象执行SQL语句。对于插入操作,我们可以使用 PreparedStatement 对象和SQL语句来插入数据。PreparedStatement 对象通过getConnection()方法获得。代码如下所示:


import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.SQLException;

public class InsertData {

  private Connection conn;

  public InsertData(Connection connect)

    conn = connect;

  

  // 插入操作

  public void insert(int id, String name, String author, double price) {

    PreparedStatement ps;

    try {

      String sql = "insert into book(id,name,author,price) values(?,?,?,?)";

      ps = conn.prepareStatement(sql);

      ps.setInt(1, id);

      ps.setString(2, name);

      ps.setString(3, author);

      ps.setDouble(4, price);

      ps.executeUpdate();

      System.out.println("数据插入成功!");

      ps.close();

    } catch (SQLException e) {

      e.printStackTrace();

    }

  }

}

3. 查询数据

对于查询操作,我们可以使用Statement对象的executeQuery方法和SQL查询语句来查询数据。代码如下所示:


import java.sql.Connection;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

public class QueryData {

  private Connection conn;

  public QueryData(Connection connect) {

    conn = connect;

  }

  // 查询操作

  public void query() {

    Statement stmt;

    try {

      stmt = conn.createStatement();

      String sql = "select * from book";

      ResultSet rs = stmt.executeQuery(sql);

      System.out.println("书籍列表如下:");

      while (rs.next()) {

        int id = rs.getInt("id");

        String name = rs.getString("name");

        String author = rs.getString("author");

        double price = rs.getDouble("price");

        System.out.print("书籍编号:" + id);

        System.out.print("\t书籍名称:" + name);

        System.out.print("\t作者:" + author);

        System.out.println("\t价格:" + price);

      }

      rs.close();

      stmt.close();

    } catch (SQLException e) {

      e.printStackTrace();

    }

  }

}

4. 更新数据

对于更新操作,我们可以使用PreparedStatement对象和SQL语句来更新数据。代码如下所示:


import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.SQLException;

public class UpdateData {

  private Connection conn;

  public UpdateData(Connection connect) {

    conn = connect;

  }

  // 更新操作

  public void update(int id, double price) {

    PreparedStatement ps;

    try {

      String sql = "update book set price=? where id=?";

      ps = conn.prepareStatement(sql);

      ps.setDouble(1, price);

      ps.setInt(2, id);

      ps.executeUpdate();

      System.out.println("数据更新成功!");

      ps.close();

    } catch (SQLException e) {

      e.printStackTrace();

    }

  }

}

5. 删除数据

对于删除操作,我们可以使用PreparedStatement对象和SQL语句来删除数据。代码如下所示:


import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.SQLException;

public class DeleteData {

  private Connection conn;

  public DeleteData(Connection connect) {

    conn = connect;

  }

  // 删除操作

  public void delete(int id) {

    PreparedStatement ps;

    try {

      String sql = "delete from book where id=?";

      ps = conn.prepareStatement(sql);

      ps.setInt(1, id);

      ps.executeUpdate();

      System.out.println("数据删除成功!");

      ps.close();

    } catch (SQLException e) {

      e.printStackTrace();

    }

  }

}

现在,我们已经实现了对数据库的增删改查操作。

三个

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复