Java GUI社团管理系统课程设计
Java GUI社团管理系统课程设计
功能齐全:增、删、改、查
极其简单,通俗易懂
八.详细设计
1.开始:选择身份登录和管理员学生登录界面
package shetuan.test.view.dengluView;import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;//开始菜单,选择身份进行登录
public class ChooseIdentity extends JDialog {public ChooseIdentity() {//设置主界面this.setTitle("学校社团管理系统");//设置窗体大小this.setSize(500, 300);//设置位置居中this.setLocationRelativeTo(null);//设置不可变形this.setResizable(false);//设置可见this.setVisible(true);//设置布局this.setLayout(null);//设置三个身份的人按钮JButton jButton1 = new JButton("管理员");JButton jButton2 = new JButton("学生");this.add(jButton1);this.add(jButton2);jButton1.setBounds(100,100,100,40);jButton2.setBounds(250,100,100,40);jButton1.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {new AdminLogin();dispose();}});jButton2.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {new StudentLogin();dispose();}});}
}//管理员登录页面
public class AdminLogin extends JDialog{private JLabel jLabel = new JLabel("管理员登录");JLabel jLabel1 = new JLabel("用户名:");//用户名标签JLabel jLabel2 = new JLabel("密码");//密码标签JTextField jTextField = new JTextField();//用户名输入框JPasswordField jPasswordField = new JPasswordField();//密码输入框private JButton jButton1 = new JButton();//确认按钮private JButton jButton2 = new JButton();//取消按钮public AdminLogin(){init();addComponent();addListener();}private void addListener() {jButton1.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {String LoginId =jTextField.getText();String Loginpsw = String.valueOf(jPasswordField.getPassword());AdminAllDao adminAllDao = new AdminAllDao();ArrayList<Admin> adminArrayList = adminAllDao.SelectAdminLogin();int flag=0;for (Admin i :adminArrayList){System.out.println(i);if (i.getAmid().equals(LoginId)&&i.getAmpsw().equals(Loginpsw)){flag = 1;}}if (flag==1){JOptionPane.showMessageDialog(null,"登陆成功,欢迎您");dispose();//dispose()即释放所有本机屏幕资源,这些 Component 的资源将被破坏,// 它们使用的所有内存都将返回到操作系统,并将它们标记为不可显示。new AdminMainJFrame();}else{JOptionPane.showMessageDialog(null,"账号或者密码错误,请重新登录");}}});jButton2.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {dispose();new ChooseIdentity();
// System.exit(0);
// new ChooseIdentity();}});}private void addComponent() {this.setLayout(null);jLabel.setBounds(200,10,100,20);this.add(jLabel);this.add(jLabel1);//添加用户名标签至面板this.add(jLabel2);//添加密码标签至面板//设置标签颜色jLabel1.setForeground(Color.black);jLabel2.setForeground(Color.black);jLabel1.setBounds(100, 50, 70, 40);// 用户名标签jLabel2.setBounds(100, 100, 70, 40);// 密码标签//输入框this.add(jTextField);this.add(jPasswordField);jTextField.setBounds(160, 50, 200, 40);//用户名框大小jPasswordField.setBounds(160, 100, 200, 40);//密码框大小jButton1.setText("登录");jButton2.setText("取消");this.add(jButton1);//添加确认按钮至面板this.add(jButton2);//添加取消按钮至面板jButton1.setBounds(160, 150, 100, 40);// 登陆按钮位置jButton2.setBounds(280, 150, 100, 40);// 取消按钮位置}public void init() {this.setTitle("管理员系统登录");this.setSize(500,300);this.setLocationRelativeTo(null);this.setResizable(false);this.setVisible(true);}
}//学生登录页面
public class StudentLogin extends JDialog{private JLabel jLabel = new JLabel("学生登录");JLabel jLabel1 = new JLabel("用户名:");//用户名标签JLabel jLabel2 = new JLabel("密码");//密码标签JTextField jTextField = new JTextField();//用户名输入框JPasswordField jPasswordField = new JPasswordField();//密码输入框private JButton jButton1 = new JButton();//确认按钮private JButton jButton2 = new JButton();//取消按钮public StudentLogin(){init();addComponent();addListener();}private void addListener() {jButton1.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {String LoginId =jTextField.getText();String Loginpsw = String.valueOf(jPasswordField.getPassword());StudentAllDao studentAllDao = new StudentAllDao();ArrayList<Student> studentArrayList = studentAllDao.SelectStudentLogin();int flag=0;for (Student i :studentArrayList){System.out.println(i);if (i.getSid().equals(LoginId)&&i.getSpsw().equals(Loginpsw)){flag = 1;}}if (flag==1){JOptionPane.showMessageDialog(null,"登陆成功,欢迎您");dispose();//dispose()即释放所有本机屏幕资源,这些 Component 的资源将被破坏,// 它们使用的所有内存都将返回到操作系统,并将它们标记为不可显示。new StudentMainJFrame();}else{JOptionPane.showMessageDialog(null,"账号或者密码错误,请重新登录");}}});jButton2.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {dispose();new ChooseIdentity();
// System.exit(0);
// new ChooseIdentity();}});}private void addComponent() {this.setLayout(null);jLabel.setBounds(200,10,100,20);this.add(jLabel);this.add(jLabel1);//添加用户名标签至面板this.add(jLabel2);//添加密码标签至面板//设置标签颜色jLabel1.setForeground(Color.black);jLabel2.setForeground(Color.black);jLabel1.setBounds(100, 50, 70, 40);// 用户名标签jLabel2.setBounds(100, 100, 70, 40);// 密码标签//输入框this.add(jTextField);this.add(jPasswordField);jTextField.setBounds(160, 50, 200, 40);//用户名框大小jPasswordField.setBounds(160, 100, 200, 40);//密码框大小jButton1.setText("登录");jButton2.setText("取消");this.add(jButton1);//添加确认按钮至面板this.add(jButton2);//添加取消按钮至面板jButton1.setBounds(160, 150, 100, 40);// 登陆按钮位置jButton2.setBounds(280, 150, 100, 40);// 取消按钮位置}public void init() {this.setTitle("学生系统登录");this.setSize(500,300);this.setLocationRelativeTo(null);this.setResizable(false);this.setVisible(true);}
}
2.社团、管理员、学生封装类
//社团封装类
public class Community {private int cmid;private String cmname;private int cmmembercount;private String cmaddress;private String cmclassify;private String chairman;private int chid;private int chage;private String chsex;private String chclass;public int getCmid() {return cmid;}public void setCmid(int cmid) {this.cmid = cmid;}public String getCmname() {return cmname;}public void setCmname(String cmname) {this.cmname = cmname;}public int getCmmembercount() {return cmmembercount;}public void setCmmembercount(int cmmembercount) {this.cmmembercount = cmmembercount;}public String getCmaddress() {return cmaddress;}public void setCmaddress(String cmaddress) {this.cmaddress = cmaddress;}public String getCmclassify() {return cmclassify;}public void setCmclassify(String cmclassify) {this.cmclassify = cmclassify;}public String getChairman() {return chairman;}public void setChairman(String chairman) {this.chairman = chairman;}public int getChid() {return chid;}public void setChid(int chid) {this.chid = chid;}public int getChage() {return chage;}public void setChage(int chage) {this.chage = chage;}public String getChsex() {return chsex;}public void setChsex(String chsex) {this.chsex = chsex;}public String getChclass() {return chclass;}public void setChclass(String chclass) {this.chclass = chclass;}@Overridepublic String toString() {return "Community{" +"cmid=" + cmid +", cmname='" + cmname + '\'' +", cmmembercount=" + cmmembercount +", cmaddress='" + cmaddress + '\'' +", cmclassify='" + cmclassify + '\'' +", chairman='" + chairman + '\'' +", chid=" + chid +", chage=" + chage +", chsex='" + chsex + '\'' +", chclass='" + chclass + '\'' +'}';}
}//管理员封装类
public class Admin {private String Amid;private String Ampsw;public String getAmid() {return Amid;}public void setAmid(String amid) {Amid = amid;}public String getAmpsw() {return Ampsw;}public void setAmpsw(String ampsw) {Ampsw = ampsw;}@Overridepublic String toString() {return "Admin{" +"Amid='" + Amid + '\'' +", Ampsw='" + Ampsw + '\'' +'}';}
}//学生封装类
public class Student {private String Sid;private String Spsw;public String getSid() {return Sid;}public void setSid(String sid) {Sid = sid;}public String getSpsw() {return Spsw;}public void setSpsw(String spsw) {Spsw = spsw;}@Overridepublic String toString() {return "Student{" +"Sid='" + Sid + '\'' +", Spsw='" + Spsw + '\'' +'}';}
}
3.JDBC连接数据库
public class JDBCUtils {private static Connection connection;//获得连接public static Connection getConnection() {try {//注册驱动Class.forName("com.mysql.jdbc.Driver");String url = "jdbc:mysql://127.0.0.1:3306/shetuan?useUnicode=true&characterEncoding=UTF-8";String user = "root";String password = "root";connection = DriverManager.getConnection(url, user, password);//测试是否连接System.out.println("数据库连接成功");} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException throwables) {throwables.printStackTrace();}return connection;}//关闭连接public static void close(Connection connection,Statement statement,ResultSet resultSet) {if (connection != null) {try {connection.close();} catch (SQLException throwables) {throwables.printStackTrace();}}if (statement!=null){try {statement.close();} catch (SQLException throwables) {throwables.printStackTrace();}}if (resultSet!=null){try {resultSet.close();} catch (SQLException throwables) {throwables.printStackTrace();}}}public static void close(Connection connection,Statement statement) {if (connection != null) {try {connection.close();} catch (SQLException throwables) {throwables.printStackTrace();}}if (statement!=null){try {statement.close();} catch (SQLException throwables) {throwables.printStackTrace();}}}}
4.管理员功能实现类
public class AdminAllDao {ArrayList<Community> communitieslist = new ArrayList<>();//社团查询链表ArrayList<Admin> AdminList = new ArrayList<>();//管理员查询链表//查询管理员登录账户public ArrayList<Admin> SelectAdminLogin(){try {Connection connection = JDBCUtils.getConnection();Statement statement = connection.createStatement();String sql = "SELECT * FROM admin";ResultSet resultSet = statement.executeQuery(sql);while (resultSet.next()){Admin admin = new Admin();admin.setAmid(resultSet.getString("Amid"));admin.setAmpsw(resultSet.getString("Ampsw"));AdminList.add(admin);}JDBCUtils.close(connection,statement,resultSet);} catch (SQLException throwables) {throwables.printStackTrace();}return AdminList;}//增加社团public void AddCommunity(String cmid,String cmname, String cmmembercount, String cmaddress,String cmclassify, String chairman, String chid,String chage, String chsex, String chclass ){try {Connection connection = JDBCUtils.getConnection();Statement statement = connection.createStatement();String sql = "INSERT INTO community(cmid,cmname,cmmembercount,cmaddress,cmclassify,chairman,chid,chage,chsex,chclass)VALUE("+cmid+",\""+cmname+"\","+cmmembercount+","+"\""+cmaddress+"\""+","+"\""+cmclassify+"\""+","+"\""+chairman+"\""+","+chid+","+chage+","+"\""+chsex+"\""+","+"\""+chclass+"\""+")";System.out.println(sql);int resultSet=statement.executeUpdate(sql);if (resultSet==1){System.out.println("添加成功");}else{System.out.println("添加失败,社团已存在");}JDBCUtils.close(connection,statement);} catch (SQLException throwables) {throwables.printStackTrace();}}//删除社团public void DeleteCommunity(String cmname){try {Connection connection = JDBCUtils.getConnection();Statement statement = connection.createStatement();String sql = "DELETE FROM community WHERE cmname = "+"\""+cmname+"\"";System.out.println(sql);int resultSet = statement.executeUpdate(sql);if (resultSet==1){System.out.println("删除成功");}else{System.out .println("删除失败,社团不存在");}JDBCUtils.close(connection,statement);} catch (SQLException throwables) {throwables.printStackTrace();}}//修改社团public void ChangeCommunity(String cmid1,String cmname, String cmmembercount, String cmaddress,String cmclassify, String chairman, String chid,String chage, String chsex, String chclass ){try {Connection connection = JDBCUtils.getConnection();Statement statement = connection.createStatement();String sql = "UPDATE community SET " +"cmname=\""+cmname+"\","+"cmmembercount = "+cmmembercount+","+"cmaddress=\""+cmaddress+"\","+"cmclassify=\""+cmclassify+"\"," +"chairman = \""+chairman+"\","+"chid="+chid+","+"chage="+chage+","+"" +"chsex=\""+chsex+"\","+"chclass=\""+chclass+"\"" +"WHERE cmid = "+cmid1;System.out.println(sql);int resultSet = statement.executeUpdate(sql);if (resultSet==1){System.out.println("修改成功");}else{System.out.println("修改失败,社团不存在");}} catch (SQLException throwables) {throwables.printStackTrace();}}//查询所有社团public ArrayList<Community> SelectAllCommunity(){try {Connection connection = JDBCUtils.getConnection();//获得连接Statement statement = connection.createStatement();//声明String sql = "SELECT * FROM community";//查询语句ResultSet resultSet = statement.executeQuery(sql);while (resultSet.next()){Community community = new Community();community.setCmid(resultSet.getInt("cmid"));community.setCmname(resultSet.getString("cmname"));community.setCmmembercount(resultSet.getInt("cmmembercount"));community.setCmaddress(resultSet.getString("cmaddress"));community.setCmclassify(resultSet.getString("cmclassify"));community.setChairman(resultSet.getString("chairman"));community.setChid(resultSet.getInt("chid"));community.setChage(resultSet.getInt("chage"));community.setChsex(resultSet.getString("chsex"));community.setChclass(resultSet.getString("chclass"));communitieslist.add(community);}System.out.println(connection);JDBCUtils.close(connection,statement,resultSet);} catch (SQLException throwables) {throwables.printStackTrace();}return communitieslist;}}
5.学生功能实现类
public class StudentAllDao {ArrayList<Student> StudentList = new ArrayList<>();//学生查询链表public ArrayList<Student> SelectStudentLogin(){try {Connection connection = JDBCUtils.getConnection();Statement statement = connection.createStatement();String sql = "SELECT * FROM student";ResultSet resultSet = statement.executeQuery(sql);while (resultSet.next()){Student student = new Student();student.setSid(resultSet.getString("Sid"));student.setSpsw(resultSet.getString("Spsw"));StudentList.add(student);}JDBCUtils.close(connection,statement,resultSet);} catch (SQLException throwables) {throwables.printStackTrace();}return StudentList;}
}
6.管理员主界面和功能实现页面
//管理员主界面
public class AdminMainJFrame extends JFrame {//设置主界面JFrame jFrame = new JFrame("学校社团管理系统");//设置四个功能按钮JButton jButton1 = new JButton("增加社团");JButton jButton2 = new JButton("删除社团");JButton jButton3 = new JButton("修改社团");JButton jButton4 = new JButton("查找社团");public AdminMainJFrame(){init();addcomponent();addListener();}private void addListener() {jButton1.addActionListener(new ActionListener() {//增@Overridepublic void actionPerformed(ActionEvent e) {new AdminAdd().setVisible(true);}});jButton2.addActionListener(new ActionListener() {//删@Overridepublic void actionPerformed(ActionEvent e) {new AdminDelete().setVisible(true);}});jButton3.addActionListener(new ActionListener() {//改@Overridepublic void actionPerformed(ActionEvent e) {new AdminChange().setVisible(true);}});jButton4.addActionListener(new ActionListener() {//查@Overridepublic void actionPerformed(ActionEvent e) {new AdminSelect().setVisible(true);}});}private void addcomponent() {jFrame.add(jButton1);//增jFrame.add(jButton2);//删jFrame.add(jButton3);//改jFrame.add(jButton4);//查jButton1.setBounds(80,70,100,40);jButton2.setBounds(240,70,100,40);jButton3.setBounds(80,120,100,40);jButton4.setBounds(240,120,100,40);}private void init() {//设置关闭方式jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置窗体大小jFrame.setSize(500, 300);//设置位置居中jFrame.setLocationRelativeTo(null);//设置不可变形jFrame.setResizable(false);//设置可见jFrame.setVisible(true);//设置布局jFrame.setLayout(null);}
}//添加社团功能页面
public class AdminAdd extends JDialog {private JLabel cmid = new JLabel("社团序号");private JLabel cmname = new JLabel("社团名字");private JLabel cmmembercount = new JLabel("社团人数");private JLabel cmaddress = new JLabel("社团地址");private JLabel cmclassify = new JLabel("社团类型");private JLabel chairman = new JLabel("社团主席");private JLabel chid = new JLabel("主席学号");private JLabel chage = new JLabel("主席年龄");private JLabel chsex = new JLabel("主席性别");private JLabel chclass = new JLabel("主席班级");JTextField jTextField0 = new JTextField();JTextField jTextField1 = new JTextField();JTextField jTextField2 = new JTextField();JTextField jTextField3 = new JTextField();JTextField jTextField4 = new JTextField();JTextField jTextField5 = new JTextField();JTextField jTextField6 = new JTextField();JTextField jTextField7 = new JTextField();JTextField jTextField8 = new JTextField();JTextField jTextField9 = new JTextField();private JButton jButton = new JButton("增加");public AdminAdd(){init();addcomponent();addListener();}private void addListener() {jButton.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {String cmid = jTextField0.getText();String cmname = jTextField1.getText();String cmmembercount = jTextField2.getText();String cmaddress = jTextField3.getText();String cmclassify = jTextField4.getText();String chairman = jTextField5.getText();String chid = jTextField6.getText();String chage = jTextField7.getText();String chsex = jTextField8.getText();String chclass = jTextField9.getText();new AdminAllDao().AddCommunity(cmid,cmname,cmmembercount,cmaddress,cmclassify,chairman,chid,chage,chsex,chclass);}});jTextField9.addKeyListener(new KeyAdapter() {@Overridepublic void keyPressed(KeyEvent e) {if (e.getKeyChar()==KeyEvent.VK_ENTER){jButton.doClick();}}});}private void addcomponent() {this.add(cmid);this.add(cmname);this.add(cmmembercount);this.add(cmaddress);this.add(cmclassify);this.add(chairman);this.add(chid);this.add(chage);this.add(chsex);this.add(chclass);cmid.setForeground(Color.black);cmname.setForeground(Color.black);cmmembercount.setForeground(Color.black);cmaddress.setForeground(Color.black);cmclassify.setForeground(Color.black);chairman.setForeground(Color.black);chid.setForeground(Color.black);chage.setForeground(Color.black);chsex.setForeground(Color.black);chclass.setForeground(Color.black);cmid.setBounds(100,20,120,20);cmname.setBounds(200,20,70,20);cmmembercount.setBounds(300,20,70,20);cmaddress.setBounds(400,20,70,20);cmclassify.setBounds(500,20,70,20);chairman.setBounds(100,100,70,20);chid.setBounds(200,100,70,20);chage.setBounds(300,100,70,20);chsex.setBounds(400,100,70,20);chclass.setBounds(500,100,70,20);this.add(jTextField0);this.add(jTextField1);this.add(jTextField2);this.add(jTextField3);this.add(jTextField4);this.add(jTextField5);this.add(jTextField6);this.add(jTextField7);this.add(jTextField8);this.add(jTextField9);jTextField0.setBounds(100,50,70,20);jTextField1.setBounds(200,50,70,20);jTextField2.setBounds(300,50,70,20);jTextField3.setBounds(400,50,70,20);jTextField4.setBounds(500,50,70,20);jTextField5.setBounds(100,150,70,20);jTextField6.setBounds(200,150,70,20);jTextField7.setBounds(300,150,70,20);jTextField8.setBounds(400,150,70,20);jTextField9.setBounds(500,150,70,20);this.add(jButton);jButton.setBounds(270,200,100,40);}private void init() {this.setTitle("添加社团");this.setSize(700,480);this.setLocationRelativeTo(null);this.setResizable(false);this.setLayout(null);}//删除社团
public class AdminDelete extends JDialog {private JLabel jLabel = new JLabel("删除社团");private JLabel jLabel1 = new JLabel("社团名称");private JTextField jTextField = new JTextField();//通过社团名字进行删除private JButton jButton = new JButton();//删除按钮public AdminDelete(){init();addcomponent();addListener();}private void addListener() {jButton.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {String cmname=jTextField.getText();System.out.println(cmname);new AdminAllDao().DeleteCommunity(cmname);}});}private void addcomponent() {this.add(jLabel);jLabel.setBounds(200,10,100,20);this.add(jLabel1);jLabel1.setBounds(100,50,70,40);this.add(jTextField);jTextField.setBounds(160,50,200,40);jButton.setText("删除");this.add(jButton);jButton.setBounds(160,150,200,40);}private void init() {this.setTitle("删除社团");this.setSize(500,300);this.setLocationRelativeTo(null);this.setResizable(false);this.setLayout(null);}
}
//修改页面
public class AdminChange extends JDialog {private JTable jTable=new JTable();//创建表格来显示数据private JLabel tableJLabel=new JLabel("社团列表");// 将表格放置于滑动面板里面private JScrollPane jScrollPane=new JScrollPane();private JLabel cmid = new JLabel("社团序号");private JLabel cmname = new JLabel("社团名字");private JLabel cmmembercount = new JLabel("社团人数");private JLabel cmaddress = new JLabel("社团地址");private JLabel cmclassify = new JLabel("社团类型");private JLabel chairman = new JLabel("社团主席");private JLabel chid = new JLabel("主席学号");private JLabel chage = new JLabel("主席年龄");private JLabel chsex = new JLabel("主席性别");private JLabel chclass = new JLabel("主席班级");private JLabel cmid1 = new JLabel("要修改社团的id");JTextField jTextField0 = new JTextField();JTextField jTextField1 = new JTextField();JTextField jTextField2 = new JTextField();JTextField jTextField3 = new JTextField();JTextField jTextField4 = new JTextField();JTextField jTextField5 = new JTextField();JTextField jTextField6 = new JTextField();JTextField jTextField7 = new JTextField();JTextField jTextField8 = new JTextField();JTextField jTextField9 = new JTextField();private JButton jButton = new JButton("修改");public AdminChange(){init();addcomponent();addListener();}private void addListener() {jButton.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {String cmid1 = jTextField0.getText();String cmname = jTextField1.getText();String cmmembercount = jTextField2.getText();String cmaddress = jTextField3.getText();String cmclassify = jTextField4.getText();String chairman = jTextField5.getText();String chid = jTextField6.getText();String chage = jTextField7.getText();String chsex = jTextField8.getText();String chclass = jTextField9.getText();new AdminAllDao().ChangeCommunity(cmid1,cmname,cmmembercount,cmaddress,cmclassify,chairman,chid,chage,chsex,chclass);}});}private void addcomponent() {tableJLabel.setBounds(200,10,70,25);this.add(tableJLabel);//表格方法queryAllCommunity();//将表格添加进滚动面板里jScrollPane.setViewportView(jTable);jScrollPane.setBounds(50,50,600,500);//将面板添加至JFrame中this.add(jScrollPane);//优化表格jTable.getTableHeader().setReorderingAllowed(false);jTable.getTableHeader().setResizingAllowed(false);jTable.setEnabled(false);this.add(cmid1);this.add(cmname);this.add(cmmembercount);this.add(cmaddress);this.add(cmclassify);this.add(chairman);this.add(chid);this.add(chage);this.add(chsex);this.add(chclass);cmid1.setForeground(Color.black);cmname.setForeground(Color.black);cmmembercount.setForeground(Color.black);cmaddress.setForeground(Color.black);cmclassify.setForeground(Color.black);chairman.setForeground(Color.black);chid.setForeground(Color.black);chage.setForeground(Color.black);chsex.setForeground(Color.black);chclass.setForeground(Color.black);cmid1.setBounds(150,550,120,20);cmname.setBounds(250,550,70,20);cmmembercount.setBounds(350,550,70,20);cmaddress.setBounds(450,550,70,20);cmclassify.setBounds(550,550,70,20);chairman.setBounds(150,650,70,20);chid.setBounds(250,650,70,20);chage.setBounds(350,650,70,20);chsex.setBounds(450,650,70,20);chclass.setBounds(550,650,70,20);this.add(jButton);jButton.setBounds(350,750,100,40);this.add(jTextField0);this.add(jTextField1);this.add(jTextField2);this.add(jTextField3);this.add(jTextField4);this.add(jTextField5);this.add(jTextField6);this.add(jTextField7);this.add(jTextField8);this.add(jTextField9);jTextField0.setBounds(150,580,70,20);jTextField1.setBounds(250,580,70,20);jTextField2.setBounds(350,580,70,20);jTextField3.setBounds(450,580,70,20);jTextField4.setBounds(550,580,70,20);jTextField5.setBounds(150,680,70,20);jTextField6.setBounds(250,680,70,20);jTextField7.setBounds(350,680,70,20);jTextField8.setBounds(450,680,70,20);jTextField9.setBounds(550,680,70,20);}private void queryAllCommunity() {AdminAllDao adminDao = new AdminAllDao();ArrayList<Community> list = adminDao.SelectAllCommunity();String thead[] = {"社团序号","社团名称","社团人数","社团地址","社团类型", "社团主席","主席学号","主席年龄","主席性别","主席班级"};String tbody[][] = new String[list.size()][10];for (int i = 0 ; i < list.size() ; i ++){Community community =list.get(i);tbody[i][0] = community.getCmid()+" ";tbody[i][1] = community.getCmname();tbody[i][2] = community.getCmmembercount()+" ";tbody[i][3] = community.getCmaddress();tbody[i][4] = community.getCmclassify();tbody[i][5] = community.getChairman();tbody[i][6] = community.getChid()+" ";tbody[i][7] = community.getChage()+" ";tbody[i][8] = community.getChsex();tbody[i][9] = community.getChclass();}jTable = new JTable(tbody,thead);jTable.setModel(new DefaultTableModel(tbody,thead));}private void init() {this.setTitle("修改社团");this.setSize(800,900);this.setLocationRelativeTo(null);this.setResizable(false);this.setLayout(null);}
}
//查询页面
public class AdminSelect extends JDialog {private JTable jTable=new JTable();//创建表格来显示数据private JLabel tableJLabel=new JLabel("社团列表");// 将表格放置于滑动面板里面private JScrollPane jScrollPane=new JScrollPane();//添加Tableheadprivate JLabel cmid = new JLabel("社团序号");private JLabel cmname = new JLabel("社团名字");private JLabel cmmembercount = new JLabel("社团人员数");private JLabel cmaddress = new JLabel("社团地址");private JLabel cmclassify = new JLabel("社团类型");private JLabel chairman = new JLabel("社团主席");private JLabel chid = new JLabel("主席学号");private JLabel chage = new JLabel("主席年龄");private JLabel chsex = new JLabel("主席性别");private JLabel chclass = new JLabel("主席班级");public AdminSelect(){init();addcomponent();}//设置社团查询表格,并连接数据库内数据private void queryAllCommunity() {AdminAllDao adminAllDao = new AdminAllDao();ArrayList<Community> communityArrayList = adminAllDao.SelectAllCommunity();String thead[] = {"社团序号","社团名称","社团人数","社团地址","社团类型", "社团主席","主席学号","主席年龄","主席性别","主席班级"};String tbody[][] = new String[communityArrayList.size()][10];for (int i = 0 ; i < communityArrayList.size() ; i ++){Community community = communityArrayList.get(i);tbody[i][0] = community.getCmid()+" ";tbody[i][1] = community.getCmname();tbody[i][2] = community.getCmmembercount()+" ";tbody[i][3] = community.getCmaddress();tbody[i][4] = community.getCmclassify();tbody[i][5] = community.getChairman();tbody[i][6] = community.getChid()+" ";tbody[i][7] = community.getChage()+" ";tbody[i][8] = community.getChsex();tbody[i][9] = community.getChclass();}jTable = new JTable(tbody,thead);jTable.setModel(new DefaultTableModel(tbody,thead));}private void addcomponent() {tableJLabel.setBounds(200,10,70,25);this.add(tableJLabel);//表格方法queryAllCommunity();//将表格添加进滚动面板里jScrollPane.setViewportView(jTable);jScrollPane.setBounds(50,50,600,500);//添加面板this.add(jScrollPane);//优化表格jTable.getTableHeader().setReorderingAllowed(false);jTable.getTableHeader().setResizingAllowed(false);jTable.setEnabled(false);}private void init() {this.setTitle("查询界面");//设置大小this.setSize(800,750);//设置位置居中this.setLocationRelativeTo(null);//设置不可变形this.setResizable(false);this.setLayout(null);}
}
7.学生主界面和功能实现界面
//学生主界面
public class StudentMainJFrame extends JFrame {//设置主界面JFrame jFrame = new JFrame("学生管理系统");JButton jButton1 = new JButton("查找社团");public StudentMainJFrame(){init();addcomponent();addListener();}private void addListener() {jButton1.addActionListener(new ActionListener() {//查@Overridepublic void actionPerformed(ActionEvent e) {new StudentSelect().setVisible(true);}});}private void addcomponent() {jFrame.add(jButton1);//查jButton1.setBounds(200,120,100,40);}private void init() {//设置关闭方式jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置窗体大小jFrame.setSize(500, 300);//设置位置居中jFrame.setLocationRelativeTo(null);//设置不可变形jFrame.setResizable(false);//设置可见jFrame.setVisible(true);//设置布局jFrame.setLayout(null);}
}public class StudentSelect extends JDialog {private JTable jTable=new JTable();//创建表格来显示数据private JLabel tableJLabel=new JLabel("社团列表");// 将表格放置于滑动面板里面private JScrollPane jScrollPane=new JScrollPane();//添加Tableheadprivate JLabel cmid = new JLabel("社团序号");private JLabel cmname = new JLabel("社团名字");private JLabel cmmembercount = new JLabel("社团人员数");private JLabel cmaddress = new JLabel("社团地址");private JLabel cmclassify = new JLabel("社团类型");private JLabel chairman = new JLabel("社团主席");private JLabel chid = new JLabel("主席学号");private JLabel chage = new JLabel("主席年龄");private JLabel chsex = new JLabel("主席性别");private JLabel chclass = new JLabel("主席班级");public StudentSelect(){init();addcomponent();}//设置社团查询表格,并连接数据库内数据private void queryAllCommunity() {AdminAllDao adminAllDao = new AdminAllDao();ArrayList<Community> communityArrayList = adminAllDao.SelectAllCommunity();String thead[] = {"社团序号","社团名称","社团人数","社团地址","社团类型", "社团主席","主席学号","主席年龄","主席性别","主席班级"};String tbody[][] = new String[communityArrayList.size()][10];for (int i = 0 ; i < communityArrayList.size() ; i ++){Community community = communityArrayList.get(i);tbody[i][0] = community.getCmid()+" ";tbody[i][1] = community.getCmname();tbody[i][2] = community.getCmmembercount()+" ";tbody[i][3] = community.getCmaddress();tbody[i][4] = community.getCmclassify();tbody[i][5] = community.getChairman();tbody[i][6] = community.getChid()+" ";tbody[i][7] = community.getChage()+" ";tbody[i][8] = community.getChsex();tbody[i][9] = community.getChclass();}jTable = new JTable(tbody,thead);jTable.setModel(new DefaultTableModel(tbody,thead));}private void addcomponent() {tableJLabel.setBounds(200,10,70,25);this.add(tableJLabel);//表格方法queryAllCommunity();//将表格添加进滚动面板里jScrollPane.setViewportView(jTable);jScrollPane.setBounds(50,50,600,500);//添加面板this.add(jScrollPane);//优化表格jTable.getTableHeader().setReorderingAllowed(false);jTable.getTableHeader().setResizingAllowed(false);jTable.setEnabled(false);}private void init() {this.setTitle("查询界面");//设置大小this.setSize(800,750);//设置位置居中this.setLocationRelativeTo(null);//设置不可变形this.setResizable(false);this.setLayout(null);}
}
九. 测试分析
十.课程设计总结
1.巩固和加深对Java程序设计课程所学知识的理解,掌握程序设计方法
2.掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能
3.提高综合运用所学的理论知识和方法,独立分析和解决问题的能力;
4.训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风
参考文献
[1]Java基础入门(第二版) 黑马程序员
Java GUI社团管理系统课程设计相关推荐
- java成绩管理系统论文总结,JAVA论文成绩管理系统课程设计
JAVA论文成绩管理系统课程设计 课课 程程 设设 计计 论论 文文 基于基于 JAVAJAVA 的学生成绩管理系统的设计与实现的学生成绩管理系统的设计与实现 学生姓名学生姓名 学学 号号 年级专业年 ...
- JAVA学生信息管理系统课程设计简介以及开发源码介绍
java学生信息管理系统简介 1.系统简介 主要实现功能:登录,注册,增加,删除,更改,查找,条件查找,查看在线账号,更改密码. 涉及到内容:java mysql8.0 Navicat 可视化工具 2 ...
- java社团管理系统文库_学生社团管理系统的设计与实现
学生社团管理系统的设计与实现 综合课程设计 题目 学生社团管理系统 学 院 计算机科学与工程学院 专 业 软件工程 班 级 学生姓名 学号 指导教师 评阅教师 时 间 目 录 摘 要I Abstrac ...
- 大一java图书馆管理系统课程设计
大一java图书馆管理系统课程设计 代码仅供参考!!!仅供参考!!! 效果图如下 管理员用户名:123 密码123 密码错误的话进入项目resources文件夹有个LMS数据库,使用数据库客户端打开 ...
- java人力资源管理系统设计_人力资源管理系统——《Java Web程序设计》课程设计...
内容简介: 人力资源管理系统--<Java Web程序设计>课程设计,正文共24页,7418字,附源程序. 0 引言 全球范围内的企业内部组织正在发生巨变,未来企业成功的关键的依靠企业人力 ...
- java技术计算机机房管理系统文档,计算机机房管理系统课程设计报告
计算机机房管理系统课程设计报告 课课 程程 设设 计计 题题 目目 计算机机房管理系统 学学 院院 专专 业业 信电分院计算机科学与技术 班班 级级 计算机 1101 姓姓 名名 指导教师指导教师 2 ...
- java仓库管理设计报告_仓库管理系统(课程设计JSPJAVA大学设计).doc
仓库管理系统(课程设计JSPJAVA大学设计) 摘 要 随着经济的不断繁荣以及加入WTO后市场环境的变化,对企业的生产经营提出了更高的要求,企业必须综合利用各种先进制造技术,在网络与信息技术的支持下, ...
- 基于Java的XXX管理系统的设计与实现——毕业设计题目
基于Java的毕业设计题目177个(持续更新中-) 联系我索要源码 提供1.远程部署2.框架代码讲解等服务(如有需要请私信) 1.房屋租赁系统-毕业设计 2.销售管理系统-毕业设计 3.公司内部管理系 ...
- java毕业设计社团管理系统mybatis+源码+调试部署+系统+数据库+lw
java毕业设计社团管理系统mybatis+源码+调试部署+系统+数据库+lw java毕业设计社团管理系统mybatis+源码+调试部署+系统+数据库+lw 本源码技术栈: 项目架构:B/S架构 开 ...
- 计算机毕业设计Java大学生社团管理系统(源码+系统+mysql数据库+lw文档)
计算机毕业设计Java大学生社团管理系统(源码+系统+mysql数据库+lw文档) 计算机毕业设计Java大学生社团管理系统(源码+系统+mysql数据库+lw文档) 本源码技术栈: 项目架构:B/S ...
最新文章
- ul ol li的序号编号样式
- 使用IntelliJ IDEA 13搭建Android集成开发环境(图文教程)
- 2021年人工神经网络第四次作业-第四题:旋转的数字
- Fedora 32正式版今天发布:提供官方下载地址
- python 基于UDP协议的socket 报错:WinError 10022 提供了一个无效的参数(原因:服务端没有绑定ip)
- 子类能否访问或覆盖父类的private方法
- 使用c#操作IBM WebSphere MQ
- html播放切片,[Html/Css]网页切片
- mysql 启动服务1067_windows无法启动MySQL服务报错1067的解决方法
- html 说明文档样式,通用模板说明文档
- Python读取word文档(python-docx包)
- 55. Attribute name 属性
- 什么是Python解释器?
- 基于Hadoop的数据分析案例-陌陌聊天软件数据分析
- 剑三 服务器状态查询,数据互通全面启动_剑侠情缘网络版叁_金山游戏官方网站_金山逍遥Xoyo.com...
- 二清资金监管户账务处理实例
- Python常用设计模式—创建型模式
- 【深度学习】【积分梯度】深度网络的公理归因(Axiomatic Attribution for Deep Networks)
- 妙赞大讲糖:降糖为何要动“刀”
- 解决ubuntu Certificate verification failed: The certificate is NOT trusted.