黑狐家游戏

java访问数据库的应用程序接口,javaweb数据库访问技术实验报告

欧气 1 0

本文目录导读:

  1. 实验目的
  2. 实验环境
  3. 实验步骤
  4. 实验结果

《JavaWeb 数据库访问技术实验报告》

姓名:[你的姓名]

学号:[你的学号]

专业:[你的专业]

班级:[你的班级]

指导教师:[指导教师姓名]

实验日期:[实验日期]

实验目的

1、掌握 Java 语言中访问数据库的基本方法和步骤。

2、熟悉 JDBC(Java Database Connectivity)的 API 接口和使用方式。

3、学会使用数据库管理系统(如 MySQL)创建数据库、表和执行 SQL 语句。

4、能够使用 Java 程序连接数据库并进行数据的增删改查操作。

实验环境

1、操作系统:Windows 10

2、数据库管理系统:MySQL 8.0

3、Java 开发工具:IntelliJ IDEA 2021.3.1

4、JDBC 驱动程序:MySQL Connector/J 8.0.28

1、安装和配置 MySQL 数据库服务器,并创建一个名为“test”的数据库。

2、在“test”数据库中创建一个名为“students”的表,包含“id”、“name”、“age”和“gender”四个字段。

3、使用 JDBC 连接 MySQL 数据库,并执行 SQL 语句进行数据的插入、更新、删除和查询操作。

4、编写 Java 程序实现学生信息管理系统,包括添加学生、修改学生信息、删除学生和查询学生信息等功能。

实验步骤

1、安装和配置 MySQL 数据库服务器

- 下载 MySQL 安装文件,并按照安装向导进行安装。

- 安装完成后,启动 MySQL 服务,并设置 root 用户的密码。

- 使用 MySQL 命令行客户端登录数据库,创建一个名为“test”的数据库。

2、创建“students”表

- 使用 MySQL 命令行客户端登录“test”数据库。

- 执行以下 SQL 语句创建“students”表:

CREATE TABLE students (
    id INT PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(50) NOT NULL,
    age INT NOT NULL,
    gender ENUM('男', '女') NOT NULL
);

3、导入 JDBC 驱动程序

- 将 MySQL Connector/J 8.0.28 驱动程序下载到本地,并将其解压到 Java 项目的“lib”目录下。

- 在 IntelliJ IDEA 中,右键点击项目名称,选择“Open Module Settings”,在“Modules”选项卡中,点击“Dependencies”,然后点击“+”号,选择“JARs or directories”,将“lib”目录下的 MySQL Connector/J 驱动程序添加到项目的依赖中。

4、使用 JDBC 连接 MySQL 数据库

- 创建一个 Java 类,名为“JDBCConnection”,用于连接 MySQL 数据库。

- 在“JDBCConnection”类中,编写以下代码实现连接数据库:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class JDBCConnection {
    public static Connection getConnection() throws SQLException {
        // 数据库 URL
        String url = "jdbc:mysql://localhost:3306/test";
        // 数据库用户名
        String username = "root";
        // 数据库密码
        String password = "root";
        // 加载 MySQL 驱动程序
        Class.forName("com.mysql.cj.jdbc.Driver");
        // 获取数据库连接
        Connection connection = DriverManager.getConnection(url, username, password);
        return connection;
    }
}

5、执行 SQL 语句进行数据的插入、更新、删除和查询操作

- 创建一个 Java 类,名为“JDBCExample”,用于执行 SQL 语句进行数据的插入、更新、删除和查询操作。

- 在“JDBCExample”类中,编写以下代码实现数据的插入、更新、删除和查询操作:

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class JDBCExample {
    // 插入学生信息
    public static void insertStudent(String name, int age, String gender) throws SQLException {
        // 获取数据库连接
        Connection connection = JDBCConnection.getConnection();
        // 定义 SQL 插入语句
        String sql = "INSERT INTO students (name, age, gender) VALUES (?,?,?)";
        // 创建 PreparedStatement 对象
        PreparedStatement preparedStatement = connection.prepareStatement(sql);
        // 设置参数
        preparedStatement.setString(1, name);
        preparedStatement.setInt(2, age);
        preparedStatement.setString(3, gender);
        // 执行插入操作
        int rowsAffected = preparedStatement.executeUpdate();
        if (rowsAffected > 0) {
            System.out.println("插入学生信息成功!");
        } else {
            System.out.println("插入学生信息失败!");
        }
        // 关闭资源
        preparedStatement.close();
        connection.close();
    }
    // 更新学生信息
    public static void updateStudent(int id, String name, int age, String gender) throws SQLException {
        // 获取数据库连接
        Connection connection = JDBCConnection.getConnection();
        // 定义 SQL 更新语句
        String sql = "UPDATE students SET name =?, age =?, gender =? WHERE id =?";
        // 创建 PreparedStatement 对象
        PreparedStatement preparedStatement = connection.prepareStatement(sql);
        // 设置参数
        preparedStatement.setString(1, name);
        preparedStatement.setInt(2, age);
        preparedStatement.setString(3, gender);
        preparedStatement.setInt(4, id);
        // 执行更新操作
        int rowsAffected = preparedStatement.executeUpdate();
        if (rowsAffected > 0) {
            System.out.println("更新学生信息成功!");
        } else {
            System.out.println("更新学生信息失败!");
        }
        // 关闭资源
        preparedStatement.close();
        connection.close();
    }
    // 删除学生信息
    public static void deleteStudent(int id) throws SQLException {
        // 获取数据库连接
        Connection connection = JDBCConnection.getConnection();
        // 定义 SQL 删除语句
        String sql = "DELETE FROM students WHERE id =?";
        // 创建 PreparedStatement 对象
        PreparedStatement preparedStatement = connection.prepareStatement(sql);
        // 设置参数
        preparedStatement.setInt(1, id);
        // 执行删除操作
        int rowsAffected = preparedStatement.executeUpdate();
        if (rowsAffected > 0) {
            System.out.println("删除学生信息成功!");
        } else {
            System.out.println("删除学生信息失败!");
        }
        // 关闭资源
        preparedStatement.close();
        connection.close();
    }
    // 查询学生信息
    public static void queryStudent(int id) throws SQLException {
        // 获取数据库连接
        Connection connection = JDBCConnection.getConnection();
        // 定义 SQL 查询语句
        String sql = "SELECT * FROM students WHERE id =?";
        // 创建 PreparedStatement 对象
        PreparedStatement preparedStatement = connection.prepareStatement(sql);
        // 设置参数
        preparedStatement.setInt(1, id);
        // 执行查询操作
        ResultSet resultSet = preparedStatement.executeQuery();
        if (resultSet.next()) {
            int studentId = resultSet.getInt("id");
            String name = resultSet.getString("name");
            int age = resultSet.getInt("age");
            String gender = resultSet.getString("gender");
            System.out.println("学生 ID:" + studentId);
            System.out.println("学生姓名:" + name);
            System.out.println("学生年龄:" + age);
            System.out.println("学生性别:" + gender);
        } else {
            System.out.println("未找到该学生信息!");
        }
        // 关闭资源
        resultSet.close();
        preparedStatement.close();
        connection.close();
    }
    public static void main(String[] args) throws SQLException {
        // 插入学生信息
        insertStudent("张三", 20, "男");
        // 更新学生信息
        updateStudent(1, "李四", 21, "女");
        // 删除学生信息
        deleteStudent(2);
        // 查询学生信息
        queryStudent(1);
    }
}

6、编写 Java 程序实现学生信息管理系统

- 创建一个 Java 类,名为“StudentManagementSystem”,用于实现学生信息管理系统。

- 在“StudentManagementSystem”类中,编写以下代码实现添加学生、修改学生信息、删除学生和查询学生信息等功能:

import java.util.Scanner;
public class StudentManagementSystem {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("欢迎使用学生信息管理系统!");
        while (true) {
            System.out.println("请选择操作:");
            System.out.println("1. 添加学生");
            System.out.println("2. 修改学生信息");
            System.out.println("3. 删除学生");
            System.out.println("4. 查询学生信息");
            System.out.println("5. 退出系统");
            int choice = scanner.nextInt();
            switch (choice) {
                case 1:
                    System.out.println("请输入学生姓名:");
                    String name = scanner.next();
                    System.out.println("请输入学生年龄:");
                    int age = scanner.nextInt();
                    System.out.println("请输入学生性别:");
                    String gender = scanner.next();
                    try {
                        JDBCExample.insertStudent(name, age, gender);
                    } catch (SQLException e) {
                        e.printStackTrace();
                    }
                    break;
                case 2:
                    System.out.println("请输入学生 ID:");
                    int id = scanner.nextInt();
                    System.out.println("请输入学生姓名:");
                    name = scanner.next();
                    System.out.println("请输入学生年龄:");
                    age = scanner.nextInt();
                    System.out.println("请输入学生性别:");
                    gender = scanner.next();
                    try {
                        JDBCExample.updateStudent(id, name, age, gender);
                    } catch (SQLException e) {
                        e.printStackTrace();
                    }
                    break;
                case 3:
                    System.out.println("请输入学生 ID:");
                    id = scanner.nextInt();
                    try {
                        JDBCExample.deleteStudent(id);
                    } catch (SQLException e) {
                        e.printStackTrace();
                    }
                    break;
                case 4:
                    System.out.println("请输入学生 ID:");
                    id = scanner.nextInt();
                    try {
                        JDBCExample.queryStudent(id);
                    } catch (SQLException e) {
                        e.printStackTrace();
                    }
                    break;
                case 5:
                    System.out.println("感谢使用学生信息管理系统,再见!");
                    scanner.close();
                    System.exit(0);
                default:
                    System.out.println("无效的选择,请重新输入!");
            }
        }
    }
}

实验结果

1、成功连接到 MySQL 数据库,并创建了“test”数据库和“students”表。

2、成功执行了 SQL 语句进行数据的插入、更新、删除和查询操作。

3、成功实现了学生信息管理系统,包括添加学生、修改学生信息、删除学生和查询学生信息等功能。

通过本次实验,我掌握了 Java 语言中访问数据库的基本方法和步骤,熟悉了 JDBC 的 API 接口和使用方式,学会了使用数据库管理系统创建数据库、表和执行 SQL 语句,并且能够使用 Java 程序连接数据库并进行数据的增删改查操作,我也通过编写 Java 程序实现了学生信息管理系统,提高了自己的编程能力和问题解决能力。

在实验过程中,我遇到了一些问题,如数据库连接失败、SQL 语句执行失败等,通过查阅相关资料和调试代码,我最终解决了这些问题,通过这次实验,我深刻体会到了在编程过程中遇到问题时,要保持耐心和细心,不断尝试和探索,才能找到解决问题的方法。

我也意识到了自己在 Java 编程方面还有很多不足之处,需要进一步学习和提高,我将继续努力学习 Java 编程知识,不断提高自己的编程能力和综合素质。

仅供参考,你可以根据实际情况进行调整。

标签: #Java #数据库 #接口 #实验报告

黑狐家游戏
  • 评论列表

留言评论