学生(信息)管理系统设计代码+报告

目录

题目:

运行截图:(登录界面,主界面,学生列表)

代码:

1.登录界面:

2.主界面

3.学生列表

报告截图:​


题目:

   设计一个学生管理系统。可以实现对学生信息的添加、删除、修改和查询功能,要求使用mysql数据库存储学生信息,并熟练使用数据库操作的常用方法实现相关的操作。

问题的解决方案

根据系统功能要求,可以将问题解决分为以下步骤:

(1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;

(2)分析系统中的各个实体及它们之间的关系;

(3)根据问题描述,设计系统的类层次;

(4)完成类层次中各个类的描述;

(5)完成类中各个成员函数的定义;

(6)完成系统的应用模块;

(7)功能调试;

(8)完成系统总结报告。

运行截图:(登录界面,主界面,学生列表)

 

 

 

 

 

代码:

1.登录界面:

package view;
import java.awt.BorderLayout;
import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;


import datebase.Verifylogin;
import datebase.admin;

import javax.swing.GroupLayout;
import javax.swing.GroupLayout.Alignment;
import javax.swing.JTextField;
import javax.swing.JFormattedTextField;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.ImageIcon;
import java.awt.Font;
import javax.swing.JButton;
import javax.swing.LayoutStyle.ComponentPlacement;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.Color;
import java.awt.Toolkit;
import java.awt.SystemColor;

public class Login extends JFrame {

	private JPanel contentPane;
	private JTextField LoginTextField;
	private JTextField NumberTextField;
	private JTextField PasswordTextField;

	/**
	 * Launch the application.
	 */
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					Login frame = new Login();
					frame.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}

	/**
	 * Create the frame.
	 */
	public Login() {
		setIconImage(Toolkit.getDefaultToolkit().getImage("C:\\Users\\86187\\Desktop\\\u6821\u56ED.jpg"));
		setTitle("\u5B66\u751F\u7BA1\u7406\u7CFB\u7EDF\u767B\u9646\u754C\u9762");
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(100, 100, 666, 404);
		contentPane = new JPanel();
		contentPane.setBackground(SystemColor.menu);
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		setContentPane(contentPane);
		
		JLabel lblNewLabel = new JLabel("\u5B66\u751F\u7BA1\u7406\u7CFB\u7EDF");
		lblNewLabel.setFont(new Font("华文宋体", Font.BOLD, 18));
		lblNewLabel.setIcon(new ImageIcon(Login.class.getResource("/images/\u5728\u7C4D\u5B66\u751F\u7BA1\u7406.png")));
		
		JLabel lblNewLabel_1 = new JLabel("\u7528\u6237\u540D\uFF1A");
		lblNewLabel_1.setFont(new Font("华文宋体", Font.PLAIN, 14));
		lblNewLabel_1.setIcon(new ImageIcon(Login.class.getResource("/images/\u7528\u6237.png")));
		
		LoginTextField = new JTextField();
		LoginTextField.setBackground(SystemColor.inactiveCaptionBorder);
		LoginTextField.setColumns(10);
		
		JLabel lblNewLabel_2 = new JLabel("\u5B66\u5DE5\u53F7\uFF1A");
		lblNewLabel_2.setIcon(new ImageIcon(Login.class.getResource("/images/\u73ED\u7EA7\u5217\u8868.png")));
		lblNewLabel_2.setFont(new Font("华文宋体", Font.PLAIN, 14));
		
		NumberTextField = new JTextField();
		NumberTextField.setBackground(SystemColor.inactiveCaptionBorder);
		NumberTextField.setColumns(10);
		
		JLabel lblNewLabel_3 = new JLabel("\u5BC6\u7801\uFF1A");
		lblNewLabel_3.setFont(new Font("华文宋体", Font.PLAIN, 14));
		lblNewLabel_3.setIcon(new ImageIcon(Login.class.getResource("/images/\u5BC6\u7801.png")));
		
		PasswordTextField = new JTextField();
		PasswordTextField.setBackground(SystemColor.inactiveCaptionBorder);
		PasswordTextField.setColumns(10);
		
		JButton LoginbtnNewButton = new JButton("\u767B\u5F55");
		LoginbtnNewButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				loginAction(e);
			}
		});
		LoginbtnNewButton.setFont(new Font("华文宋体", Font.PLAIN, 14));
		LoginbtnNewButton.setIcon(new ImageIcon(Login.class.getResource("/images/\u9000\u51FA\u7CFB\u7EDF.png")));
		
		JButton resetbtnNewButton = new JButton("\u91CD\u7F6E");
		resetbtnNewButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				resetbtnNewButton(e);
			}
		});
		resetbtnNewButton.setFont(new Font("华文宋体", Font.PLAIN, 14));
		resetbtnNewButton.setIcon(new ImageIcon(Login.class.getResource("/images/\u91CD\u7F6E.png")));
		GroupLayout gl_contentPane = new GroupLayout(contentPane);
		gl_contentPane.setHorizontalGroup(
			gl_contentPane.createParallelGroup(Alignment.LEADING)
				.addGroup(gl_contentPane.createSequentialGroup()
					.addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
						.addGroup(gl_contentPane.createSequentialGroup()
							.addGap(168)
							.addComponent(lblNewLabel, GroupLayout.PREFERRED_SIZE, 192, GroupLayout.PREFERRED_SIZE))
						.addGroup(gl_contentPane.createSequentialGroup()
							.addGap(142)
							.addGroup(gl_contentPane.createParallelGroup(Alignment.TRAILING, false)
								.addComponent(lblNewLabel_2, Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
								.addComponent(lblNewLabel_1, Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
								.addComponent(lblNewLabel_3, Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
							.addGap(18)
							.addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING, false)
								.addComponent(PasswordTextField)
								.addComponent(NumberTextField)
								.addComponent(LoginTextField, GroupLayout.DEFAULT_SIZE, 237, Short.MAX_VALUE))))
					.addContainerGap(167, Short.MAX_VALUE))
				.addGroup(gl_contentPane.createSequentialGroup()
					.addGap(110)
					.addComponent(LoginbtnNewButton, GroupLayout.PREFERRED_SIZE, 97, GroupLayout.PREFERRED_SIZE)
					.addPreferredGap(ComponentPlacement.RELATED, 210, Short.MAX_VALUE)
					.addComponent(resetbtnNewButton, GroupLayout.PREFERRED_SIZE, 97, GroupLayout.PREFERRED_SIZE)
					.addGap(128))
		);
		gl_contentPane.setVerticalGroup(
			gl_contentPane.createParallelGroup(Alignment.LEADING)
				.addGroup(gl_contentPane.createSequentialGroup()
					.addGap(29)
					.addComponent(lblNewLabel)
					.addGap(36)
					.addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE)
						.addComponent(lblNewLabel_1)
						.addComponent(LoginTextField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
					.addGap(37)
					.addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE)
						.addComponent(lblNewLabel_2)
						.addComponent(NumberTextField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
					.addGap(41)
					.addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE)
						.addComponent(lblNewLabel_3)
						.addComponent(PasswordTextField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
					.addPreferredGap(ComponentPlacement.RELATED, 50, Short.MAX_VALUE)
					.addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE)
						.addComponent(LoginbtnNewButton)
						.addComponent(resetbtnNewButton))
					.addGap(30))
		);
		contentPane.setLayout(gl_contentPane);
	}

	protected void resetbtnNewButton(ActionEvent e) {
		// TODO Auto-generated method stub
		LoginTextField.setText("");
		NumberTextField.setText("");
		PasswordTextField.setText("");
	}

	protected void loginAction(ActionEvent e) {
		// TODO Auto-generated method stub
		String userName=LoginTextField.getText().toString();
		String id=NumberTextField.getText().toString();
		String password=PasswordTextField.getText().toString();
		if(StringUtil.isEmpty(userName)){
			JOptionPane.showMessageDialog(this,"用户名不能为空!");
			return;
		}
		if(StringUtil.isEmpty(id)){
			JOptionPane.showMessageDialog(this,"学工号不能为空!");
			return;
		}
		if(StringUtil.isEmpty(password)){
			JOptionPane.showMessageDialog(this,"密码不能为空!");
			return;
		}
		admin admin1=null;
		Verifylogin adminDao=new Verifylogin();
		   admin adminTmp=new admin();
		   adminTmp.setName(userName);
		   adminTmp.setId(id);
		   adminTmp.setPassword(password);
		   admin1=adminDao.login(adminTmp);
			if(admin1==null) {
				JOptionPane.showMessageDialog(this, "用户名或密码错误!");
				return;
			}
			JOptionPane.showMessageDialog(this, "欢迎:"+admin1.getName()+"老师登录本系统!");
			this.dispose();			
			new Main(admin1).setVisible(true);
	}
}

2.主界面

package view;

import java.awt.BorderLayout;
import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;

import datebase.admin;

import javax.swing.JMenuBar;
import javax.swing.JMenu;
import javax.swing.ImageIcon;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;

import java.awt.event.ActionListener;
import java.net.URI;
import java.awt.event.ActionEvent;
import javax.swing.JDesktopPane;
import java.awt.Color;
import java.awt.Desktop;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.SwingConstants;

public class Main extends JFrame {

	private JPanel contentPane;
	private JDesktopPane desktopPane;
	public static admin admin1;

	/**
	 * Launch the application.
	 */
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					Main frame = new Main(null);
					frame.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}

	/**
	 * Create the frame.
	 */
	public Main(admin admin1) {
		this.admin1=admin1;
		setTitle("\u4FE1\u606F\u7CFB\u7EDF\u4E3B\u754C\u9762");
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(100, 100, 828, 626);
		
		JMenuBar menuBar = new JMenuBar();
		setJMenuBar(menuBar);
		
		JMenu mnNewMenu = new JMenu("\u4E2A\u4EBA\u4FE1\u606F");
		mnNewMenu.setIcon(new ImageIcon(Main.class.getResource("/images/Settings.png")));
		menuBar.add(mnNewMenu);
		
		JMenuItem mntmNewMenuItem = new JMenuItem("\u4FEE\u6539\u5BC6\u7801");
		mntmNewMenuItem.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent ae) {
				editPassword(ae);
			}
		});
		mntmNewMenuItem.setIcon(new ImageIcon(Main.class.getResource("/images/\u4FEE\u6539\u5BC6\u7801.png")));
		mnNewMenu.add(mntmNewMenuItem);
		
		JMenu mnNewMenu_2 = new JMenu("\u4FE1\u606F\u7BA1\u7406");
		mnNewMenu_2.setIcon(new ImageIcon(Main.class.getResource("/images/\u73ED\u7EA7\u7BA1\u7406.png")));
		menuBar.add(mnNewMenu_2);
		
		JMenuItem mntmNewMenuItem_4 = new JMenuItem("\u6DFB\u52A0\u5B66\u751F");
		mntmNewMenuItem_4.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				    classstudentAdd editPasswordFrm=new classstudentAdd();
					editPasswordFrm.setVisible(true);
					desktopPane.add(editPasswordFrm);
			}
		});
		mntmNewMenuItem_4.setIcon(new ImageIcon(Main.class.getResource("/images/\u6DFB\u52A01(1).png")));
		mnNewMenu_2.add(mntmNewMenuItem_4);
		
		JMenuItem mntmNewMenuItem_5 = new JMenuItem("\u4FE1\u606F\u5217\u8868");
		mntmNewMenuItem_5.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				
				liststudents editPasswordFrm=new liststudents();
					editPasswordFrm.setVisible(true);
					desktopPane.add(editPasswordFrm);
			}
		});
		
		JMenuItem mntmNewMenuItem_2 = new JMenuItem("\u67E5\u627E\u5B66\u751F");
		mntmNewMenuItem_2.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				sceach sceach1=new sceach();
				sceach1.setVisible(true);
				desktopPane.add(sceach1);		
			}
		});
		mntmNewMenuItem_2.setIcon(new ImageIcon(Main.class.getResource("/images/\u67E5\u627E.png")));
		mnNewMenu_2.add(mntmNewMenuItem_2);
		mntmNewMenuItem_5.setIcon(new ImageIcon(Main.class.getResource("/images/\u73ED\u7EA7\u5217\u8868.png")));
		mnNewMenu_2.add(mntmNewMenuItem_5);
		
		JMenu mnNewMenu_3 = new JMenu("\u5E2E\u52A9");
		mnNewMenu_3.setIcon(new ImageIcon(Main.class.getResource("/images/\u5E2E\u52A9.png")));
		menuBar.add(mnNewMenu_3);
		
		JMenuItem mntmNewMenuItem_6 = new JMenuItem("\u95EE\u9898\u4E0E\u53CD\u9988");
		mntmNewMenuItem_6.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent ae) {
				aboutUs(ae);
			}
		});
		mntmNewMenuItem_6.setIcon(new ImageIcon(Main.class.getResource("/images/\u5173\u4E8E\u6211\u4EEC.png")));
		mnNewMenu_3.add(mntmNewMenuItem_6);
		
		JMenu mnNewMenu_1 = new JMenu("\u9000\u51FA");
		mnNewMenu_1.setIcon(new ImageIcon(Main.class.getResource("/images/\u9000\u51FA.png")));
		menuBar.add(mnNewMenu_1);
		
		JMenuItem mntmNewMenuItem_1 = new JMenuItem("\u9000\u51FA\u8BE5\u7CFB\u7EDF");
		mntmNewMenuItem_1.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				if(JOptionPane.showConfirmDialog(Main.this, "确定退出么?")==JOptionPane.OK_OPTION) {
					System.exit(0);
				}
			}
		});
		mntmNewMenuItem_1.setIcon(new ImageIcon(Main.class.getResource("/images/\u9000\u51FA\u7CFB\u7EDF.png")));
		mnNewMenu_1.add(mntmNewMenuItem_1);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		contentPane.setLayout(new BorderLayout(0, 0));
		setContentPane(contentPane);
		
		desktopPane = new JDesktopPane();
		desktopPane.setBackground(new Color(173, 216, 230));
		contentPane.add(desktopPane, BorderLayout.CENTER);
		
		JLabel lblNewLabel = new JLabel("New label");
		lblNewLabel.setIcon(new ImageIcon("C:\\Users\\86187\\Desktop\\\u6821\u56ED.jpg"));
		lblNewLabel.setBounds(0, 0, 804, 556);
		desktopPane.add(lblNewLabel);
		
	}

	protected void editPassword(ActionEvent ae) {
		// TODO Auto-generated method stub
		EditPassword editPasswordFrm=new EditPassword();
		editPasswordFrm.setVisible(true);
		//desktopPane.add(editPasswordFrm);
	}

	protected void aboutUs(ActionEvent ae) {
		// TODO Auto-generated method stub
		String info="问题建议请联系:\n";
		info +="QQ:3104073309";
		JOptionPane.showMessageDialog(this, info);
	}
}

3.学生列表

 package view;

import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.List;
import java.util.Vector;

import javax.swing.JInternalFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import java.awt.BorderLayout;

import javax.swing.GroupLayout;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JDesktopPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.GroupLayout.Alignment;
import javax.swing.LayoutStyle.ComponentPlacement;
import javax.swing.table.DefaultTableModel;

import datebase.classstudents;
import datebase.studentsthings;

import java.awt.Color;
import java.awt.Font;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

public class liststudents extends JInternalFrame {
	private JTable table;
	private JTextField nametextField;
	private JTextField agetextField;
	private JTextField adresstextField;

	/**
	 * Launch the application.
	 */
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					liststudents frame = new liststudents();
					frame.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}

	/**
	 * Create the frame.
	 */
	public liststudents() {
		setClosable(true);
		setIconifiable(true);
		setTitle("\u5B66\u751F\u5217\u8868");
		setBounds(100, 100, 550, 511);
		
        JScrollPane scrollPane = new JScrollPane();
		
		JButton btnNewButton = new JButton("\u4FEE\u6539\u4FE1\u606F");
		btnNewButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				editact(e);
			}
		});
		btnNewButton.setIcon(new ImageIcon(liststudents.class.getResource("/images/\u786E\u5B9A.png")));
		
		JButton btnNewButton_1 = new JButton("\u5220\u9664\u4FE1\u606F");
		btnNewButton_1.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				delete(e);
			}
		});
		btnNewButton_1.setIcon(new ImageIcon(liststudents.class.getResource("/images/\u53D6\u6D88\u4FEE\u6539\u540D\u79F0.png")));
		
		JLabel lblNewLabel_1 = new JLabel("\u59D3\u540D\uFF1A");
		lblNewLabel_1.setIcon(new ImageIcon(liststudents.class.getResource("/images/\u5B66\u751F\u7BA1\u7406.png")));
		
		nametextField = new JTextField();
		nametextField.setColumns(10);
		
		JLabel lblNewLabel_2 = new JLabel("\u5E74\u9F84\uFF1A");
		lblNewLabel_2.setIcon(new ImageIcon(liststudents.class.getResource("/images/\u5E74\u9F84.png")));
		
		agetextField = new JTextField();
		agetextField.setColumns(10);
		
		JLabel lblNewLabel_3 = new JLabel("\u5BB6\u5EAD\u4F4F\u5740\uFF1A");
		lblNewLabel_3.setFont(new Font("宋体", Font.PLAIN, 9));
		lblNewLabel_3.setIcon(new ImageIcon(liststudents.class.getResource("/images/\u5BB6.png")));
		
		adresstextField = new JTextField();
		adresstextField.setColumns(10);
		GroupLayout groupLayout = new GroupLayout(getContentPane());
		groupLayout.setHorizontalGroup(
			groupLayout.createParallelGroup(Alignment.LEADING)
				.addComponent(scrollPane, GroupLayout.DEFAULT_SIZE, 538, Short.MAX_VALUE)
				.addGroup(groupLayout.createSequentialGroup()
					.addGap(24)
					.addGroup(groupLayout.createParallelGroup(Alignment.LEADING)
						.addGroup(groupLayout.createSequentialGroup()
							.addPreferredGap(ComponentPlacement.RELATED)
							.addComponent(lblNewLabel_1, GroupLayout.PREFERRED_SIZE, 58, GroupLayout.PREFERRED_SIZE)
							.addGap(18)
							.addComponent(nametextField, GroupLayout.PREFERRED_SIZE, 247, GroupLayout.PREFERRED_SIZE))
						.addGroup(groupLayout.createSequentialGroup()
							.addGroup(groupLayout.createParallelGroup(Alignment.LEADING)
								.addComponent(lblNewLabel_2, GroupLayout.PREFERRED_SIZE, 58, GroupLayout.PREFERRED_SIZE)
								.addGroup(groupLayout.createSequentialGroup()
									.addPreferredGap(ComponentPlacement.RELATED)
									.addComponent(lblNewLabel_3, GroupLayout.PREFERRED_SIZE, 66, GroupLayout.PREFERRED_SIZE)))
							.addPreferredGap(ComponentPlacement.UNRELATED)
							.addGroup(groupLayout.createParallelGroup(Alignment.LEADING)
								.addComponent(adresstextField, 247, 247, 247)
								.addComponent(agetextField, 247, 247, 247))))
					.addGap(36)
					.addGroup(groupLayout.createParallelGroup(Alignment.LEADING, false)
						.addComponent(btnNewButton_1, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
						.addComponent(btnNewButton, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
					.addContainerGap(54, Short.MAX_VALUE))
		);
		groupLayout.setVerticalGroup(
			groupLayout.createParallelGroup(Alignment.LEADING)
				.addGroup(groupLayout.createSequentialGroup()
					.addComponent(scrollPane, GroupLayout.PREFERRED_SIZE, 267, GroupLayout.PREFERRED_SIZE)
					.addPreferredGap(ComponentPlacement.RELATED, 55, Short.MAX_VALUE)
					.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
						.addComponent(lblNewLabel_1)
						.addComponent(nametextField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
						.addComponent(btnNewButton))
					.addGroup(groupLayout.createParallelGroup(Alignment.LEADING)
						.addGroup(groupLayout.createSequentialGroup()
							.addGap(32)
							.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
								.addComponent(agetextField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
								.addComponent(lblNewLabel_2))
							.addGap(30)
							.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
								.addComponent(adresstextField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
								.addComponent(lblNewLabel_3)))
						.addGroup(groupLayout.createSequentialGroup()
							.addGap(50)
							.addComponent(btnNewButton_1)))
					.addGap(134))
		);
		
		table = new JTable();
		table.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				rest(e);
			}
		});
		table.setModel(new DefaultTableModel(
			new Object[][] {
			},
			new String[] {
				"\u5B66\u53F7", "\u59D3\u540D", "\u5E74\u9F84", "\u5BB6\u5EAD\u4F4F\u5740"
			}
		) {
			boolean[] columnEditables = new boolean[] {
				false, false, false, false
			};
			public boolean isCellEditable(int row, int column) {
				return columnEditables[column];
			}
		});
		scrollPane.setViewportView(table);
		getContentPane().setLayout(groupLayout);
		classstudents cs=new classstudents();
		setTable(new classstudents());

	}

	protected void delete(ActionEvent e) {
		// TODO Auto-generated method stub
		if(JOptionPane.showConfirmDialog(this, "您确定要删除吗?")!=JOptionPane.OK_OPTION) {
		  return;	
		}
		int n=table.getSelectedRow();
		if(n==-1) {
			JOptionPane.showMessageDialog(this, "请选择要删除的数据!");
			return;
		}
		DefaultTableModel dfDefaultTableModel=(DefaultTableModel) table.getModel();
		String idString=(String) (dfDefaultTableModel.getValueAt(table.getSelectedRow(), 0).toString());
		studentsthings cs=new studentsthings();
		JOptionPane.showMessageDialog(this, cs.delete(idString));
		setTable(new classstudents());
	}

	protected void editact(ActionEvent e) {
		// TODO Auto-generated method stub
		int n=table.getSelectedRow();
		if(n==-1) {
			JOptionPane.showMessageDialog(this, "请选择要修改的数据!");
			return;
		}
		DefaultTableModel dfDefaultTableModel=(DefaultTableModel) table.getModel();
		String id=dfDefaultTableModel.getValueAt(table.getSelectedRow(),0).toString();
		String name=dfDefaultTableModel.getValueAt(table.getSelectedRow(), 1).toString();
		String age=dfDefaultTableModel.getValueAt(table.getSelectedRow(), 2).toString();
		String adress=dfDefaultTableModel.getValueAt(table.getSelectedRow(), 3).toString();
		String editname=nametextField.getText().toString();
		String editage=agetextField.getText().toString();
		String editadress=adresstextField.getText().toString();
		if(StringUtil.isEmpty(editname)) {
			JOptionPane.showMessageDialog(this, "请填写修改的姓名!");
			return;
		}		
		if(StringUtil.isEmpty(editage)) {
			JOptionPane.showMessageDialog(this, "请填写修改的年龄!");
			return;
		}
		if(StringUtil.isEmpty(editadress)) {
			JOptionPane.showMessageDialog(this, "请填写修改的住址!");
			return;
		}
		if(name.equals(editname)&&age.equals(editage)&&adress.equals(editadress)) {
			JOptionPane.showMessageDialog(this, "您还没有做出任何修改!");
			return;
		}
		else {
			classstudents sc=new classstudents();
			sc.setId(id);
			sc.setName(editname);
			sc.setAge(editage);
			sc.setAdress(editadress);
			studentsthings cs=new studentsthings();
			JOptionPane.showMessageDialog(this, cs.reststu(sc));
			setTable(new classstudents());
		}
		
	}

	protected void rest(MouseEvent e) {
		// TODO Auto-generated method stub
		DefaultTableModel dfDefaultTableModel=(DefaultTableModel) table.getModel();
		//idtextField.setText(dfDefaultTableModel.getValueAt(table.getSelectedRow(),0).toString());
		nametextField.setText(dfDefaultTableModel.getValueAt(table.getSelectedRow(), 1).toString());
		agetextField.setText(dfDefaultTableModel.getValueAt(table.getSelectedRow(), 2).toString());
		adresstextField.setText(dfDefaultTableModel.getValueAt(table.getSelectedRow(), 3).toString());
	}

	private void setTable(classstudents classstudents1) {
		// TODO Auto-generated method stub
		DefaultTableModel dft=(DefaultTableModel) table.getModel();
		dft.setRowCount(0);
		studentsthings cs=new studentsthings();
			List<classstudents> classList=cs.getClassList(classstudents1);
		for(classstudents cst:classList) {
			Vector vector=new Vector();
			vector.add(cst.getId());
			vector.add(cst.getName());
			vector.add(cst.getAge());
			vector.add(cst.getAdress());
			dft.addRow(vector);
		}	
	}

}

报告截图:

 

评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值