Java开发一个学生选课系统【附代码】

本文详细介绍了使用Java开发一个学生选课系统的过程,包括环境配置(JDK、Intellij IDEA、Navicat、mysql),系统功能设计与模块划分,以及数据库设计。文中提到了后端逻辑层的实现,如实体类、DAO层和图形界面,并提供了部分关键代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

选课系统的总体设计

(1)选课系统环境要求
1、搭建java开发环境并配置JDK、安装Intellij IDEA、Navicat、mysql等工具。
2、使用java自带的swing实现窗口化图形界面。
(2)选课系统功能及模块图
学生选课系统具体后端实现和功能为:
1、后端java逻辑层:实体类、dao层、util工具类、view展示类。
2、数据库:存储商品信息以及商品所属分类,管理员账号与密码。

学生选课系统整体的功能结构图如图3-1所示:
在这里插入图片描述
图3-1 学生选课系统功能结构图

学生选课系统的详细设计

(1)选课系统总体功能展示如图3-2所示:

在这里插入图片描述

图3-2总体功能展示图

(2)数据库设计如图3-3所示:

在这里插入图片描述

图3-3数据库设计展示图

(3)选课系统的实现
我主要负责的是数据库表的设计(navicat建表)连接数据库,以及登陆界面(LogOnFrm)的实现以及一部分后端逻辑层的代码,如数据库工具类(DbUtil)、字符工具类(StringUtil)、课程类(Course)等,代码如下:
(1)LogOnFrm类

package com.java.view;
import java.awt.EventQueue;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;

import javax.swing.ButtonGroup;
import javax.swing.GroupLayout;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFormattedTextField;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPasswordField;
import javax.swing.JRadioButton;
import javax.swing.UIManager;
import javax.swing.WindowConstants;
import javax.swing.plaf.FontUIResource;

import com.java.dao.LogOnDao;
import com.java.model.Admin;
import com.java.model.Student;
import com.java.util.DbUtil;
import com.java.util.StringUtil;

//登录界面
public class LogOnFrm extends JFrame {
   
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	//私有成员变量
	private ButtonGroup buttonGroup1;
	private JLabel jLabel1;
	private JLabel jLabel2;
	private JLabel jLabel3;
	private JButton jb_logOn;
	private JButton jb_reset;
	private JRadioButton jrb_admin;
	private JRadioButton jrb_student;
	private JPasswordField passwordTxt;
	private JFormattedTextField userNameTxt;
	
	DbUtil dbUtil = new DbUtil();
	LogOnDao logOnDao = new LogOnDao();
	public static Student currentStudent ;

	//构造方法
	public LogOnFrm() {
   
		//改变系统默认字体
		Font font = new Font("Dialog", Font.PLAIN, 12);
		@SuppressWarnings("rawtypes")
		java.util.Enumeration keys = UIManager.getDefaults().keys();
		while (keys.hasMoreElements()) {
   
			Object key = keys.nextElement();
			Object value = UIManager.get(key);
			if (value instanceof FontUIResource) {
   
				UIManager.put(key, font);
			}
		}
		//调用放置组件方法
		initComponents();
		//设置在windows系统中默认居于屏幕正中
		this.setLocationRelativeTo(
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值