开发工具eclipse,jdk1.8
技术:java swing
数据库:mysql5.7
学生选课系统功能:管理员、教师、学生三个角色
一、管理员功能:
1.登录、修改密码、退出系统
2.学生管理:添加、修改、删除、查询
3.班级管理:添加、修改、删除、查询
4.教师管理:添加、修改、删除、查询
5.课程管理:添加、修改、删除、查询
6.选课管理:修改选课、推选课程
7.签到管理和签到统计
签到管理:确认签到、添加缺席
签到统计:列表显示、柱状图显示、饼状图显示
8.签到管理和签到统计
录入成绩
成绩管理:成绩修改、成绩删除
成绩统计:默认显示、柱状图显示、饼状图显示
9.帮助、关于
二、教师功能:
1.登录、修改密码、退出系统
2.学生管理:添加、修改、删除、查询
3.班级管理:添加、修改、删除、查询
4.教师管理:修改个人信息
5.课程管理:添加、修改、删除、查询
6.选课管理:修改选课、推选课程
7.签到管理和签到统计
签到管理:确认签到、添加缺席
签到统计:列表显示、柱状图显示、饼状图显示
8.签到管理和签到统计
录入成绩
成绩管理:成绩修改、成绩删除
成绩统计:默认显示、柱状图显示、饼状图显示
9.帮助、关于
三、学生功能:
1.登录、修改密码、退出系统
2.学生管理:修改个人信息
3.选课管理:修改选课、推选课程
4.确认签到
5.成绩查看
6.帮助、关于
管理员截图:
教师截图:
学生截图:
package com.artisan.view;import java.awt.EventQueue;import javax.swing.JInternalFrame;
import javax.swing.GroupLayout;
import javax.swing.JOptionPane;
import javax.swing.GroupLayout.Alignment;
import javax.swing.JLabel;import java.awt.Font;import javax.swing.ImageIcon;
import javax.swing.JTextField;
import javax.swing.LayoutStyle.ComponentPlacement;
import javax.swing.JTextArea;
import javax.swing.JButton;import com.artisan.dao.ClassDao;
import com.artisan.model.StudentClass;
import com.artisan.util.StringUtil;import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;public class AddStudentClassFrm extends JInternalFrame {private JTextField classNameTextField;private JTextArea classInfotextArea;/*** Launch the application.*/public static void main(String[] args) {EventQueue.invokeLater(new Runnable() {public void run() {try {AddStudentClassFrm frame = new AddStudentClassFrm();frame.setVisible(true);} catch (Exception e) {e.printStackTrace();}}});}/*** Create the frame.*/public AddStudentClassFrm() {setClosable(true);setIconifiable(true);setTitle("\u6DFB\u52A0\u73ED\u7EA7\u4FE1\u606F");setBounds(100, 100, 450, 300);JLabel label = new JLabel("\u73ED\u7EA7\u540D\u79F0\uFF1A");label.setIcon(new ImageIcon(AddStudentClassFrm.class.getResource("/images/\u73ED\u7EA7\u540D\u79F0.png")));label.setFont(new Font("微软雅黑", Font.PLAIN, 14));classNameTextField = new JTextField();classNameTextField.setColumns(10);JLabel label_1 = new JLabel("\u73ED\u7EA7\u4FE1\u606F\uFF1A");label_1.setIcon(new ImageIcon(AddStudentClassFrm.class.getResource("/images/\u73ED\u7EA7\u4ECB\u7ECD.png")));label_1.setFont(new Font("微软雅黑", Font.PLAIN, 14));classInfotextArea = new JTextArea();JButton submitButton = new JButton("\u63D0\u4EA4");submitButton.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent ae) {submitClass(ae);}});submitButton.setIcon(new ImageIcon(AddStudentClassFrm.class.getResource("/images/\u786E\u8BA4.png")));submitButton.setFont(new Font("微软雅黑", Font.PLAIN, 14));JButton restButton = new JButton("\u91CD\u7F6E");restButton.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {resetValue(e);}});restButton.setIcon(new ImageIcon(AddStudentClassFrm.class.getResource("/images/\u91CD\u7F6E.png")));restButton.setFont(new Font("微软雅黑", Font.PLAIN, 14));GroupLayout groupLayout = new GroupLayout(getContentPane());groupLayout.setHorizontalGroup(groupLayout.createParallelGroup(Alignment.LEADING).addGroup(groupLayout.createSequentialGroup().addGroup(groupLayout.createParallelGroup(Alignment.TRAILING).addGroup(groupLayout.createSequentialGroup().addContainerGap().addComponent(submitButton).addGap(72).addComponent(restButton)).addGroup(Alignment.LEADING, groupLayout.createSequentialGroup().addGap(73).addGroup(groupLayout.createParallelGroup(Alignment.LEADING).addGroup(groupLayout.createSequentialGroup().addComponent(label_1).addPreferredGap(ComponentPlacement.UNRELATED).addComponent(classInfotextArea)).addGroup(groupLayout.createSequentialGroup().addComponent(label).addPreferredGap(ComponentPlacement.UNRELATED).addComponent(classNameTextField, GroupLayout.PREFERRED_SIZE, 173, GroupLayout.PREFERRED_SIZE))))).addContainerGap(88, Short.MAX_VALUE)));groupLayout.setVerticalGroup(groupLayout.createParallelGroup(Alignment.LEADING).addGroup(groupLayout.createSequentialGroup().addGap(32).addGroup(groupLayout.createParallelGroup(Alignment.BASELINE).addComponent(label).addComponent(classNameTextField, GroupLayout.PREFERRED_SIZE, 32, GroupLayout.PREFERRED_SIZE)).addGap(39).addGroup(groupLayout.createParallelGroup(Alignment.BASELINE).addComponent(label_1).addComponent(classInfotextArea, GroupLayout.PREFERRED_SIZE, 101, GroupLayout.PREFERRED_SIZE)).addPreferredGap(ComponentPlacement.RELATED, 36, Short.MAX_VALUE).addGroup(groupLayout.createParallelGroup(Alignment.BASELINE).addComponent(restButton).addComponent(submitButton)).addGap(18)));getContentPane().setLayout(groupLayout);}protected void submitClass(ActionEvent ae) {// TODO Auto-generated method stubString className = classNameTextField.getText().toString();String classInfo = classInfotextArea.getText().toString();if(StringUtil.isEmpty(className)){JOptionPane.showMessageDialog(this, "班级名称不能为空!");return;}StudentClass scl = new StudentClass();scl.setName(className);scl.setInfo(classInfo);ClassDao classDao = new ClassDao();if(classDao.addClass(scl)){JOptionPane.showMessageDialog(this, "班级添加成功!");}else{JOptionPane.showMessageDialog(this, "班级添加失败!");}classDao.closeDao();resetValue(ae);}protected void resetValue(ActionEvent e) {// TODO Auto-generated method stubclassNameTextField.setText("");classInfotextArea.setText("");}
}
上一篇:我的MEM管理类研究生,在路上