基于JavaSwing+mysql开发一个学生社团管理系统设计和实现

时间:2022-06-06 22:58:58

前言:

项目是使用Java swing+mysql开发,可实现基础数据维护、用户登录注册、社团信息列表查看、社团信息添加、社团信息修改、社团信息删除以及退出注销等功能、界面设计比较简单易学、适合作为Java课设设计以及学习技术使用。

引言

随着全球信息化的迅猛发展,高效规模不断壮大,协会人数急剧增加,有必要开发一个学生社团管理系统来提高社联对社团的管理效率,学生社团管理系统将逐渐取代传统的人工管理模式。本文采用Java+swing+mysql作为开发技术,以Java为编程语言,开发一个基javaSwing的学生社团管理系统。该系统可以对社团工作进行快速、高效的管理,为社团之间和社团会员之间提供一个良好的信息交流的平台,让社团成员可以展示自己的风采,及时了解社团的新动态,营造一个现代化的学习生活环境。

基于JavaSwing+mysql开发一个学生社团管理系统设计和实现

主要技术和工具:

eclipse+JDK1..8+Navicat 数据库可视化工具+swing +mysql

功能截图:

用户登录注册:
用户输入账号密码进行登录、没注册的用户点击注册按钮进行用户信息注册、注册后即可成功登录查看社团信息。

基于JavaSwing+mysql开发一个学生社团管理系统设计和实现

基于JavaSwing+mysql开发一个学生社团管理系统设计和实现

社团列表查看:

基于JavaSwing+mysql开发一个学生社团管理系统设计和实现

社团信息添加:

录入社团相关信息完成社团添加操作

基于JavaSwing+mysql开发一个学生社团管理系统设计和实现

社团信息修改:

基于JavaSwing+mysql开发一个学生社团管理系统设计和实现

社团信息删除:

基于JavaSwing+mysql开发一个学生社团管理系统设计和实现

注销退出:

注销退出执行页面关闭操作。

关键代码:

用户登录:

  1. /**
  2. * 登录主界面
  3. * @author admin
  4. *
  5. */
  6. public class LoginFrame extends JFrame {
  7. private static final long serialVersionUID = 1L;
  8.  
  9. // 登录背景和 Logo 图片颜色
  10. Color logoPaneColor = new Color(230, 230, 250);
  11. Color mainPaneColor = new Color(230, 230, 250);
  12. Color mainFrameColor = new Color(186, 110, 64);
  13. Color logoFramColor = new Color(186, 110, 64);
  14.  
  15. JLayeredPane layeredPane = new JLayeredPane(); // 面板层
  16. ImageIcon bgImage = new ImageIcon("./img/bgImage.png"); // 背景图片
  17. ImageIcon lgImage = new ImageIcon("./img/login1.png"); // 登录图片
  18.  
  19. JPanel bgPanel = new JPanel(); // 背景面板
  20. JPanel mainPanel = new JPanel(); // 登陆面板
  21. JPanel logoPanel = new JPanel(); // 企业logo
  22.  
  23. final JLabel user_name = new JLabel("用户名:"); // 登录标签
  24. final JLabel user_password = new JLabel("密 码:");// 密码标签
  25.  
  26. JButton button_ok = new JButton("登陆"); // 确认按钮
  27. JButton btRegister=new JButton("注册"); // 注册按钮
  28. JButton button_cansel = new JButton("退出");// 退出按钮
  29.  
  30. JTextField text_name = new JTextField(""); // 登陆用户名
  31. JPasswordField text_password = new JPasswordField(""); // 登陆密码
  32. JFrame loginFrame = null; // 登录窗口类
  33.  
  34. /**
  35. * 登录按钮点击监听类:收集登录信息,并校验;校验成功,则进入系统主页面
  36. * @author admin
  37. *
  38. */
  39. class LoginOKAction implements ActionListener {
  40. public void actionPerformed(ActionEvent e) {
  41. String userName = text_name.getText();
  42. String password = new String(text_password.getPassword());
  43.  
  44. // 判空操作
  45. if(userName.equals("") || password.equals("")) {
  46. // 弹出提示信息,操作结束
  47. JOptionPane.showMessageDialog(loginFrame, "登录用户名和密码不能为空!", "提示", JOptionPane.PLAIN_MESSAGE);
  48. return;
  49. }
  50.  
  51. // 根据用户名和密码进行查询
  52. boolean flag = UserManager.login(userName, password);
  53.  
  54. // 校验失败,返回
  55. if(!flag) {
  56. JOptionPane.showMessageDialog(loginFrame, "登录用户名不匹配!", "提示", JOptionPane.PLAIN_MESSAGE);
  57. return;
  58. }
  59.  
  60. // 成功,进入主页
  61. setVisible(false);
  62. new MainFrame().setVisible(true);
  63. }
  64.  
  65. }
  66.  
  67. /**
  68. * 登录 Frame 的构造函数
  69. */
  70. public LoginFrame() {
  71. super("学生社团管理系统");
  72. initialize();
  73. this.loginFrame = this;
  74. }
  75.  
  76. /**
  77. * 程序 main 函数
  78. * @param args
  79. */
  80. public static void main(String[] args) {
  81. // 创建登录 Frame 进入应用登录页面
  82. new LoginFrame();
  83. }
  84. }

添加社团信息:

  1.  
  2. public class AddFrame extends AbstractFormFrame {
  3. private static final long serialVersionUID = 1L;
  4. /**
  5. * 主界面配置
  6. */
  7. public AddFrame() {
  8. super("添加");
  9. // 居中
  10. GUIUtil.toCenter(this);
  11. }
  12.  
  13. @Override
  14. public void submit(CommunityInfo community) {
  15. // 判唯一
  16. CommunityInfo tmp = CommunityManager.queryOne(community.getName());
  17. if (tmp != null) {
  18. JOptionPane.showMessageDialog(this, "社团名称已存在!");
  19. return;
  20. }
  21.  
  22. // 添加到记录列表
  23. CommunityManager.add(community);
  24.  
  25. // 提示
  26. JOptionPane.showMessageDialog(this, "添加成功!");
  27. }
  28. }

备注:项目来于网络、作者整理优化测试、若有侵权联系作者删除

总结:

经过近期对 java 相关知识面向对象程序设计、Java swing等的掌握和学习,让我更加了解到 java 学习的重要性。在开发这个社团系统,我完成多个实验以及测试,在这个阶段的学习开发中,我从认识到熟悉,而后到能够自主运用。通过对 java swing知识以及数据库的设计相关的了解,我发现它确实有很多方便之处,它集抽象性、封装性、继承性和多态性于一体,实现了代码重用和代码扩充,提高了软件开发的效率。对于我们这个专业来说学好 java 语言是很重要的,所以在开发这个项目的过程中我都尽力理解 java 编程思想、掌握基本技巧,尽量学到最多的知识。 我学习程序设计的基本目的就是培养描述实际问题的程序化解决方案的关键技能,总体来说 java 面向对象程序设计是一门实践性比较强的语言。

源码下载

到此这篇关于基于JavaSwing+mysql开发一个学生社团管理系统设计和实现的文章就介绍到这了,更多相关Java学生社团管理系统内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/v123411739/article/details/119700990