学生社团管理系统(Java+Swing+mysql)(超简陋)

目录

学生社团管理系统(Java+Swing+mysql)

写在前面:

根据需求分析的输入描绘的社团活动管理系统结构图如下:

用户(社团管理员)登录社团活动管理系统DFD图:

其中活动信息的数据字典如下:

概念设计(E-R图)

制作阶段


学生社团管理系统(Java+Swing+mysql)

写在前面:

        作为一个计本专业大二的学生,单凭学校开设的几门专业课,学到的知识是零散的,不实操的话很难有提升,是不足以我们去完成哪怕一个小小的项目的,所以我们不得不自己去学习和尝试。

       正好我们这学期在学习Java和数据库这两门课,由此开始萌生要开始一个小小的尝试将两个知识应用到实际当中,于是我选择制作一个简单的学生社团活动管理系统(作为两个协会的部长,平时为社团活动没有少操心)。在这个系统的制作过程中不断巩固了自己的Java学习(Java中的异常处理,Java swing,JDBC等)和数据库的实际应用(虽然我们这学期学习的是SQL serve 但MySQL也是大同小异)下面开始进入正题吧!

      首先学习安装了MySQL,是通过这篇教程来安装和配置的嘿嘿MySQL安装教程,然后再找了一个MySQL的可视化应用程序,可以用Navicat(是一只猫),但由于正版要收费作为学生党就没有去费脑筋了,就找了一个口碑不错的免费软件,DBeaver(是一只海狸),可以直接在Microsoft Store里面免费下载。

       然后就开始大概规划这个系统需要的功能,登录注册功能得有吧,然后就是社团和社团活动的增删改查功能得有吧(十分简单的功能)。

        写了一个简单的文档,完成了数据库的设计包括了系统需求分析,各部分具有的功能,绘制了管理系统结构图,数据流DFD图,数据字典,概念设计E-R图等,并进行逻辑设计(关系模式),物理设计(基本表的存储结构)以及数据库的实现。

下面展示文档内部分内容:

根据需求分析的输入描绘的社团活动管理系统结构图如下:

        

社团活动管理功能模块图

用户(社团管理员)登录社团活动管理系统DFD图:

社团管理员登录社团活动管理系统DFD图 

其中活动信息的数据字典如下:

概念设计(E-R图)

 文档内容暂时就展示这么多吧,下面就开始制作阶段:

制作阶段

首先以我的能力还是很难一个一个字的去想去敲代码的,我当然还是借鉴了一些大佬的开发规范和一些源码,在这个过程中也是收获很多很多。

那么就开始吧!

开始之前还是按照规范乖乖建好Dao,Model,Util,View,文件夹。

Dao用来执行数据库与窗体系统程序之间的数据交互;

Model用来创建各实体;

Util用来保存各种工具方法,如JDBC和后面经常会用到的判断输入文本内容是否为空的方法;

View用来实现窗体各部分功能以及可视化的布局;

登录界面

部分代码:

//创建登录界面的frame
	public  LoginView() {
		setFont(new Font("仿宋", Font.PLAIN, 20));
		setResizable(false);
		setTitle("那就先登录吧!");

		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(100, 100, 473, 336);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		setContentPane(contentPane);
		contentPane.setBackground(Color.ORANGE);



		JLabel lblNewLabel = new JLabel("社团活动管理系统");
		lblNewLabel.setIcon(new ImageIcon(LoginView.class.getResource("/images/logo.png")));
		lblNewLabel.setFont(new Font("宋体", Font.BOLD, 12));
		
		JLabel lblNewLabel_1 = new JLabel("用户名:");
		lblNewLabel_1.setIcon(new ImageIcon(LoginView.class.getResource("/images/userName.png")));
		
		JLabel lblNewLabel_2 = new JLabel("密   码:");
		lblNewLabel_2.setIcon(new ImageIcon(LoginView.class.getResource("/images/password.png")));
		
		JButton btnNewButton = new JButton("登录");
		btnNewButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				loginAction(e);
			}
		});
		btnNewButton.setIcon(new ImageIcon(LoginView.class.getResource("/images/login.png")));
		
		JButton btnNewButton_1 = new JButton("重置");
		btnNewButton_1.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				resultAction(e);
			}
		});
		btnNewButton_1.setIcon(new ImageIcon(LoginView.class.getResource("/images/reset.png")));
		
		userName = new JTextField();
		userName.setColumns(10);
		
		userPassword = new JPasswordField();

		
		JButton btnNewButton_2 = new JButton("注册");
		btnNewButton_2.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				RegisterUser registerUser=new RegisterUser();
				registerUser.setVisible(true);
			}
		});
		btnNewButton_2.setIcon(new ImageIcon(LoginView.class.getResource("/images/me.png")));
		GroupLayout gl_contentPane = new GroupLayout(contentPane);

注册界面:

部分代码:

//注册界面
	public RegisterUser() {
		setTitle("那就先注册吧!");
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(100, 100, 509, 437);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		setContentPane(contentPane);
		contentPane.setBackground(Color.YELLOW);
		
		JLabel lblNewLabel = new JLabel("开始注册");
		lblNewLabel.setFont(new Font("仿宋", Font.BOLD, 27));
		lblNewLabel.setIcon(new ImageIcon(RegisterUser.class.getResource("/images/logo.png")));
		
		JLabel lblNewLabel_1 = new JLabel("用  户  名:");
		
		name = new JTextField();
		name.setColumns(10);
		
		JLabel lblNewLabel_2 = new JLabel("密        码:");
		
		JLabel lblNewLabel_3 = new JLabel("验  证  码:");
		
		verification = new JTextField();
		verification.addMouseListener(new MouseAdapter() {
			@Override
			public void mousePressed(MouseEvent e) {
				ComperPassword(e);
			}
		});
		verification.setText("");
		verification.setColumns(10);
		
		JLabel lblNewLabel_4 = new JLabel("");
		
		JLabel lblNewLabel_5 = new JLabel("确认密码:");
		
		JButton btnNewButton = new JButton("注册");

系统主界面对社团的管理:

对活动的管理:

添加活动功能部分代码:

public Addact() {
		setTitle("活动添加");
		setIconifiable(true);
		setClosable(true);
		setBounds(100, 100, 500, 501);
		
		JLabel lblNewLabel = new JLabel("活动名称:");
		
		actName = new JTextField();
		actName.setColumns(10);
		
		JLabel lblNewLabel_1 = new JLabel("活动负责人:");
		
		leadername = new JTextField();
		leadername.setColumns(10);
		
		JLabel lblNewLabel_2 = new JLabel("负责人性别:");
		
		JLabel lblNewLabel_3 = new JLabel("活动时间:");
		
		actTime = new JTextField();
		actTime.setColumns(10);
		
		JLabel lblNewLabel_4 = new JLabel("社团名称:");
		
		JLabel lblNewLabel_5 = new JLabel("活动描述:");
		
		actDesc = new JTextArea();
		
		JButton btnNewButton = new JButton("添加");
		btnNewButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				addActAction(e);
			}
		});
		btnNewButton.setIcon(new ImageIcon(Addact.class.getResource("/images/add.png")));
		
		JButton btnNewButton_1 = new JButton("重置");
		btnNewButton_1.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				reset();
			}
		});
		btnNewButton_1.setIcon(new ImageIcon(Addact.class.getResource("/images/reset.png")));
		
		man = new JRadioButton("男");
		man.setSelected(true);
		buttonGroup.add(man);
		
		woman = new JRadioButton("女");
		buttonGroup.add(woman);
		
		actType = new JComboBox();
		GroupLayout groupLayout = new GroupLayout(getContentPane());

总之,虽然完成这个小小的窗体程序花费了我挺多时间吧,但最后感觉还是很值得的,在这个过程中我也在不断学习,不断进步,嗯,还是很开心的!

     

  • 135
    点赞
  • 273
    收藏
    觉得还不错? 一键收藏
  • 104
    评论
员工工资管理系统是一个常见的软件应用程序,可以帮助公司管理员工的基本信息、薪资、考勤、福利等方面的内容。本文将介绍如何使用 Eclipse+Java+Swing+Mysql 实现员工工资管理系统。 步骤1:创建数据库 首先,我们需要在 Mysql 中创建一个名为 salary 的数据库,并在其中创建三个表:employee、salary_record 和 department。 employee 表用于存储员工的基本信息,包括员工编号、姓名、性别、部门编号等字段。salary_record 表用于存储员工的薪资记录,包括员工编号、发放日期、基本工资、奖金、扣款等字段。department 表用于存储部门的基本信息,包括部门编号、部门名称等字段。 步骤2:创建 Java 项目 在 Eclipse 中创建一个新的 Java 项目,命名为 SalaryManagementSystem。在项目中创建三个包:entity、dao 和 view。 entity 包用于存储实体类,包括 Employee、SalaryRecord 和 Department 等类。dao 包用于存储数据访问对象,包括 EmployeeDao、SalaryRecordDao 和 DepartmentDao 等类。view 包用于存储界面类,包括 LoginFrame、MainFrame 和 AddEmployeeFrame 等类。 步骤3:编写实体类 在 entity 包中创建 Employee、SalaryRecord 和 Department 等类,并为每个类添加相应的属性和方法。例如,Employee 类包括员工编号、姓名、性别、所属部门等属性,以及获取和设置这些属性的方法。 步骤4:编写数据访问对象 在 dao 包中创建 EmployeeDao、SalaryRecordDao 和 DepartmentDao 等类,并实现相应的数据访问方法。例如,EmployeeDao 类包括添加员工、删除员工、更新员工信息、查询员工信息等方法。 步骤5:编写界面类 在 view 包中创建 LoginFrame、MainFrame 和 AddEmployeeFrame 等类,并实现相应的界面和事件处理方法。例如,LoginFrame 类用于显示登录界面,并处理用户登录事件;AddEmployeeFrame 类用于显示添加员工界面,并处理添加员工事件。 步骤6:连接数据库 使用 JDBC 连接 Mysql 数据库,为每个数据访问对象创建相应的连接和预编译语句,实现数据库的增删改查操作。 步骤7:测试程序 在 Eclipse 中运行程序,测试各个功能是否正常。例如,登录功能、员工信息查询功能、添加员工功能等。 总结 本文介绍了如何使用 Eclipse+Java+Swing+Mysql 实现员工工资管理系统。通过实现实体类、数据访问对象和界面类等模块,实现对员工信息、薪资、部门信息等数据的管理。这个项目可以作为 Java 开发入门的练手项目,帮助初学者熟悉 Java 开发Swing 界面设计和 Mysql 数据库操作等技术。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 104
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值