### 学生选课系统-数据库课程设计Java #### 一、项目背景与目标 本项目为学生选课信息系统的设计与实现,旨在通过实践加强学生对Java编程语言及其数据库应用能力的理解与掌握。华南理工大学广州汽车学院计算机工程系的信息与计算科学专业学生参与了此次课程设计任务。 #### 二、系统需求分析 ##### 功能需求: - **用户登录**:通过账号和密码验证进入系统。 - **学生信息管理**:支持学生信息的添加、删除、修改及查询。 - **课程信息管理**:支持课程信息的添加、删除、修改及查询。 - **选课信息管理**:支持选课记录的添加、删除、修改及查询。 - **查询功能**:支持对学生信息、课程信息以及选课信息的模糊查询。 #### 三、数据库设计 本系统采用了SQL Server 2005作为后台数据库,并设计了四个主要的数据表。 ##### 表1:Admin(用户表) - **Username**:用户名(主键),类型为Char(10)。 - **Password**:密码,类型为Char(10)。 - **Name**:用户昵称,类型为Char(10)。 ##### 表2:S(学生信息表) - **Sno**:学号(主键),类型为Nvarchar(50)。 - **Sname**:姓名,类型为Nvarchar(50)。 - **Sx**:系别,类型为Nvarchar(50)。 ##### 表3:C(课程信息表) - **Cno**:课号(主键),类型为Nvarchar(50)。 - **Cname**:课名,类型为Nvarchar(50)。 ##### 表4:SC(选课信息表) - **Cno**:课号(外键,主键之一),类型为Nvarchar(50)。 - **Sno**:学号(外键,主键之一),类型为Nvarchar(50)。 - **Grade**:成绩,类型为Nvarchar(50)。 #### 四、系统功能描述 本系统主要包括以下四个方面的功能: 1. **学生信息管理**:能够添加新的学生信息、删除已有的学生信息、修改学生信息中的具体内容,并能进行模糊查询。 2. **课程信息管理**:支持添加新课程、删除已有课程、修改课程信息以及查询课程信息。 3. **选课信息管理**:支持学生选课,包括添加选课记录、删除选课记录、修改选课记录中的具体信息,并支持查询学生的选课情况。 4. **查询功能**:提供多种查询方式,如按学号查询学生信息、按课程名称查询课程信息等。 #### 五、代码实现分析 本系统的Java前端实现了与SQL Server数据库的交互。 ##### 连接数据库的方法 ```java public static Connection CONN() { String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; // 加载JDBC驱动 String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=student"; // 连接服务器和数据库test,此处student是数据库名 String userName = "sa"; // 默认用户名 String userPwd = "mima"; // 密码 Connection dbConn = null; try { Class.forName(driverName); dbConn = DriverManager.getConnection(dbURL, userName, userPwd); System.out.println("Connection Successful!"); } catch (Exception e) { e.printStackTrace(); } return dbConn; } ``` ##### 用户登录界面实现 ```java public class User extends JFrame { private JLabel use, password; private JTextField k1; // 用户名输入框 private JPasswordField k2; // 密码输入框 private JButton b1, b2; public User(JFrame f) { super("系统登录"); Container c = getContentPane(); c.setLayout(new FlowLayout()); use = new JLabel("username:"); use.setFont(new Font("Serif", Font.PLAIN, 20)); password = new JLabel("password:"); password.setFont(new Font("Serif", Font.PLAIN, 20)); // ... 其他代码 } } ``` 以上代码展示了如何通过Java连接SQL Server数据库,并实现了用户登录界面的基础构建。通过这些代码片段,我们可以了解到项目的实际运作机制,尤其是数据库连接和用户界面的实现部分。
剩余60页未读,继续阅读
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 考研冲刺吸引力法则.docx
- 计算机学院移动应用开发实验三:Android记账本.zip
- 基于 NCNN 的 YOLOv5,YOLOv7,YOLOv8 检测和姿势推理的 Android 库.zip
- 考计算机三级Linux时,使用官方教材做的一些重点笔记.zip
- 基于 YOLOv7 的下一代人脸检测.zip
- 问卷数据——重大革命历史题材影视剧认知与需求.xlsx
- 基于Paddlepaddle复现yolov5,支持PaddleDetection接口.zip
- 基于pytorch的yolov7-deepsort实现.zip
- Python面向对象编程基础:类、继承、封装、多态和抽象的应用
- 基于tensorrt v8.0+,使用C++和python api部署YOLOv8的检测、姿势、分割、跟踪 .zip
- 回归分析学习笔记-11
- 基于yolo-trt的浏览火线ai自瞄.zip
- Dev-Cpp_5.11_TDM-GCC_4.9.2_Setup.zip
- 基于YOLOV3的人体口罩佩戴检测.zip
- 基于YOLOv4的安全帽佩戴检测.zip
- 基于yolov5+deepsort的多任务(检测、跟踪、密集估计、物体计数)框架.zip
- 1
- 2
- 3
- 4
- 5
前往页