官方接单发单平台上线!有接单发单需求的请直接发布需求,或注册接单!点击此处查看详情!

题目:学生信息管理模块设计与开发

时间:2023-08-31 浏览:524 分类:Java程序代做

91代做网-专注各种程序代做

包括但不限于:各类毕设课设、作业辅导、代码答疑、报告论文、商业程序开发、论文复现和小程序开发等。

也欢迎各行业程序员加入我们,具体请联系客服详聊:QQ号:,微信号:,接单Q群:

题目:学生信息管理模块设计与开发

具体要求:使用Java和JDBC技术实现以下功能,并撰写完

整实验报告。

1、主要功能:完成学生基本信息管理功能(查询、添加、更新、

删除)

2、学生基本信息包括:学号(字符串)、姓名(字符串)、性别

(字符串)、出生日期(日期类型)、政治面貌(字符串:群众、

预备党员、党员)、专业(字符串)、体重(浮点型)、联系电话

(字符串)、家庭住址(字符串)

3、查询功能:按照学号精确查询、按照姓名模糊查询、无条件全

查;

4、更新功能:学号、姓名、性别不可以修改,其余字段均可修

改;

5、删除功能:按照学号删除指定学生信息;

6、主程序测试各种功能,并将结果以控制台方式输出。

7、实验报告中需要体现出数据库设计、程序代码和运行结果。

学生信息管理模块的设计和开发涉及以下几个方面:数据库设计、Java代码实现以及实验报告的撰写。我将为您提供一个基本的框架,您可以根据需要进行进一步的开发和完善。

数据库设计:

id(自增主键)

student_id(字符串类型,学号)

name(字符串类型,姓名)

gender(字符串类型,性别)

birth_date(日期类型,出生日期)

political_status(字符串类型,政治面貌)

major(字符串类型,专业)

weight(浮点型,体重)

contact_number(字符串类型,联系电话)

home_address(字符串类型,家庭住址)

创建一个名为 students 的表,包含以下字段:

Java代码实现:

使用 JDBC 连接数据库,对数据库进行增删改查操作。

创建一个 Student 类来表示学生信息,包含与数据库中的字段对应的属性和相应的 getter 和 setter 方法。

创建一个 StudentDao 类来处理数据库操作,包括查询、添加、更新和删除学生信息的方法。

在主程序中测试各种功能,例如按学号查询、按姓名查询、全查、添加学生、更新学生信息和删除学生等。

实验报告撰写:

开始部分:介绍实验目的、背景和所用的技术工具。

数据库设计:展示表结构和字段含义,并解释设计选择的原因。

程序代码:展示关键的 Java 代码片段,包括 Student 类和 StudentDao 类的定义以及主程序中功能的调用。

运行结果:展示程序运行的截图或输出结果,包括各种功能的测试结果。

总结和展望:总结实验过程中遇到的问题和解决方案,对实验结果进行分析和评价,并提出可能的改进方向。

import java.sql.*;
import java.util.ArrayList;
import java.util.List;

public class StudentDao {
    private Connection connection;

    public StudentDao() {
        // 在构造函数中建立数据库连接
        try {
            connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/db_name", "username", "password");
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

    // 查询所有学生信息
    public List<Student> getAllStudents() {
        List<Student> students = new ArrayList<>();
        try {
            Statement statement = connection.createStatement();
            ResultSet resultSet = statement.executeQuery("SELECT * FROM students");
            while (resultSet.next()) {
                Student student = new Student();
                student.setStudentId(resultSet.getString("student_id"));
                student.setName(resultSet.getString("name"));
                student.setGender(resultSet.getString("gender"));
                student.setBirthDate(resultSet.getDate("birth_date"));
                student.setPoliticalStatus(resultSet.getString("political_status"));
                student.setMajor(resultSet.getString("major"));
                student.setWeight(resultSet.getFloat("weight"));
                student.setContactNumber(resultSet.getString("contact_number"));
                student.setHomeAddress(resultSet.getString("home_address"));

                students.add(student);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return students;
    }

    // 按照学号精确查询学生信息
    public Student getStudentByStudentId(String studentId) {
        Student student = null;
        try {
            PreparedStatement preparedStatement = connection.prepareStatement("SELECT * FROM students WHERE student_id = ?");
            preparedStatement.setString(1, studentId);
            ResultSet resultSet = preparedStatement.executeQuery();
            if (resultSet.next()) {
                student = new Student();
                student.setStudentId(resultSet.getString("student_id"));
                student.setName(resultSet.getString("name"));
                student.setGender(resultSet.getString("gender"));
                student.setBirthDate(resultSet.getDate("birth_date"));
                student.setPoliticalStatus(resultSet.getString("political_status"));
                student.setMajor(resultSet.getString("major"));
                student.setWeight(resultSet.getFloat("weight"));
                student.setContactNumber(resultSet.getString("contact_number"));
                student.setHomeAddress(resultSet.getString("home_address"));
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return student;
    }

    // 按照姓名模糊查询学生信息
    public List<Student> getStudentsByName(String name) {
        List<Student> students = new ArrayList<>();
        try {
            PreparedStatement preparedStatement = connection.prepareStatement("SELECT * FROM students WHERE name LIKE ?");
            preparedStatement.setString(1, "%" + name + "%");
            ResultSet resultSet = preparedStatement.executeQuery();
            while (resultSet.next()) {
                Student student = new Student();
                student.setStudentId(resultSet.getString("student_id"));
                student.setName(resultSet.getString("name"));
                student.setGender(resultSet.getString("gender"));
                student.setBirthDate(resultSet.getDate("birth_date"));
                student.setPoliticalStatus(resultSet.getString("political_status"));
                student.setMajor(resultSet.getString("major"));
                student.setWeight(resultSet.getFloat("weight"));
                student.setContactNumber(resultSet.getString("contact_number"));
                student.setHomeAddress(resultSet.getString("home_address"));

                students.add(student);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return students;
    }

    // 添加学生信息
    public void addStudent(Student student) {
        try {
            PreparedStatement preparedStatement = connection.prepareStatement("INSERT INTO students (student_id, name, gender, birth_date, political_status, major, weight, contact_number, home_address) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)");
            preparedStatement.setString(1, student.getStudentId());
            preparedStatement.setString(2, student.getName());
            preparedStatement.setString(3, student.getGender());
            preparedStatement.setDate(4, new Date(student.getBirthDate().getTime()));
            preparedStatement.setString(5, student.getPoliticalStatus());
            preparedStatement.setString(6, student.getMajor());
            preparedStatement.setFloat(7, student.getWeight());
            preparedStatement.setString(8, student.getContactNumber());
            preparedStatement.setString(9, student.getHomeAddress());

            preparedStatement.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

    // 更新学生信息
    public void updateStudent(Student student) {
        try {
            PreparedStatement preparedStatement = connection.prepareStatement("UPDATE students SET name = ?, gender = ?, birth_date = ?, political_status = ?, major = ?, weight = ?, contact_number = ?, home_address = ? WHERE student_id = ?");
            preparedStatement.setString(1, student.getName());
            preparedStatement.setString(2, student.getGender());
            preparedStatement.setDate(3, new Date(student.getBirthDate().getTime()));
            preparedStatement.setString(4, student.getPoliticalStatus());
            preparedStatement.setString(5, student.getMajor());
            preparedStatement.setFloat(6, student.getWeight());
            preparedStatement.setString(7, student.getContactNumber());
            preparedStatement.setString(8, student.getHomeAddress());
            preparedStatement.setString(9, student.getStudentId());

            preparedStatement.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

    // 删除学生信息
    public void deleteStudent(String studentId) {
        try {
            PreparedStatement preparedStatement = connection.prepareStatement("DELETE FROM students WHERE student_id = ?");
            preparedStatement.setString(1, studentId);
            preparedStatement.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

    public void close() {
        // 关闭数据库连接
        try {
            connection.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

public class Student {
    private String studentId;
    private String name;
    private String gender;
    private Date birthDate;
    private String politicalStatus;
    private String major;
    private float weight;
    private String contactNumber;
    private String homeAddress;

    // getter 和 setter 方法省略

    @Override
    public String toString() {
        return "Student{" +
                "studentId='" + studentId + '\'' +
                ", name='" + name + '\'' +
                ", gender='" + gender + '\'' +
                ", birthDate=" + birthDate +
                ", politicalStatus='" + politicalStatus + '\'' +
                ", major='" + major + '\'' +
                ", weight=" + weight +
                ", contactNumber='" + contactNumber + '\'' +
                ", homeAddress='" + homeAddress + '\'' +
                '}';
    }
}

public class Main {
    public static void main(String[] args) {
        StudentDao studentDao = new StudentDao();

        // 查询所有学生信息
        List<Student> allStudents = studentDao.getAllStudents();
        System.out.println("所有学生信息:");
        for (Student student : allStudents) {
            System.out.println(student);
        }
        System.out.println();

        // 按照学号精确查询学生信息
        Student student1 = studentDao.getStudentByStudentId("1001");
        System.out.println("学号为1001的学生信息:");
        System.out.println(student1);
        System.out.println();

        // 按照姓名模糊查询学生信息
        List<Student> studentsWithName = studentDao.getStudentsByName("张");
        System.out.println("姓名包含“张”的学生信息:");
        for (Student student : studentsWithName) {
            System.out.println(student);
        }
        System.out.println();

        // 添加学生信息
        Student student2 = new Student();
        student2.setStudentId("1002");
        student2.setName("李四");
        student2.setGender("男");
        student2.setBirthDate(new Date(System.currentTimeMillis()));
        student2.setPoliticalStatus("群众");
        student2.setMajor("计算机科学");
        student2.setWeight(65.0f);
        student2.setContactNumber("1234567890");
        student2.setHomeAddress("北京市");
        studentDao.addStudent(student2);
        System.out.println("添加学生信息后的所有学生信息:");
        allStudents = studentDao.getAllStudents();
        for (Student student : allStudents) {
            System.out.println(student);
        }
        System.out.println();

        // 更新学生信息
        Student student3 = new Student();
        student3.setStudentId("1002");
        student3.setName("王五");
        student3.setGender("男");
        student3.setBirthDate(new Date(System.currentTimeMillis()));
        student3.setPoliticalStatus("预备党员");
        student3.setMajor("软件工程");
        student3.setWeight(70.0f);
        student3.setContactNumber("9876543210");
        student3.setHomeAddress("上海市");
        studentDao.updateStudent(student3);
        System.out.println("更新学生信息后的所有学生信息:");
        allStudents = studentDao.getAllStudents();
        for (Student student : allStudents) {
            System.out.println(student);
        }
        System.out.println();

        // 删除学生信息
        studentDao.deleteStudent("1002");
        System.out.println("删除学生信息后的所有学生信息:");
        allStudents = studentDao.getAllStudents();
        for (Student student : allStudents) {
            System.out.println(student);
        }
        System.out.println();

        studentDao.close();
    }
}


客服