⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 displaystudent.java

📁 主要是对于JAVA的编程的基本语言 希望能够帮得上你。
💻 JAVA
字号:
package StudentManagement;

import javax.swing.*;

import java.awt.event.*;
import java.awt.*;
import java.sql.*;

public class DisplayStudent extends JFrame implements ActionListener{
	
	//声明部分	
	JPanel panel1,panel2;
	JLabel lblNumber,lblName,lblSex,lblAge,lblDepartment;
	JTextField txtNumber,txtName,txtSex,txtAge,txtDepartment;
	JButton btnTop,btnPrevious,btnNext,btnBottom,btnExit;
	Connection conn;
	Statement stmt;
	ResultSet rs;		
	int recCount; //总记录数
	
	//构造方法
	public DisplayStudent(String title){
		super(title);
		initialize();		
	}
	
	private void initialize() {	
		//创建组件
		panel1=new JPanel();
		panel2=new JPanel();
		lblNumber=new JLabel("学号:");
		lblName=new JLabel("姓名:");
		lblSex=new JLabel("性别:");
		lblAge=new JLabel("年龄:");
		lblDepartment=new JLabel("系名:");
		txtNumber=new JTextField("",10);
		txtName=new JTextField("",10);
		txtSex=new JTextField("",5);
		txtAge=new JTextField("",5);
		txtDepartment=new JTextField("",15);
		btnTop=new JButton("第一条[T]");
		btnPrevious=new JButton("上一条[P]");
		btnNext=new JButton("下一条[N]");
		btnBottom=new JButton("最后一条[B]");
		btnExit=new JButton("退出[X]");
		//添加组件	
		this.getContentPane().setLayout(new BorderLayout());
		this.getContentPane().add(panel1,"Center");
		this.getContentPane().add(panel2,"South");
		panel1.setLayout(new GridLayout(5,2));
		panel1.add(lblNumber);
		panel1.add(txtNumber);
		panel1.add(lblName);
		panel1.add(txtName);
		panel1.add(lblSex);
		panel1.add(txtSex);
		panel1.add(lblAge);
		panel1.add(txtAge);
		panel1.add(lblDepartment);
		panel1.add(txtDepartment);
		panel2.add(btnTop);
		panel2.add(btnPrevious);
		panel2.add(btnNext);
		panel2.add(btnBottom);
		panel2.add(btnExit);		
		//设置属性
		this.setSize(500, 300);		
		this.setResizable(false);
		this.pack();
		this.setLocationRelativeTo(null);
		this.setVisible(true);
		
		txtNumber.setEditable(false);
		txtName.setEditable(false);
		txtSex.setEditable(false);
		txtAge.setEditable(false);
		txtDepartment.setEditable(false);
		
		btnTop.setMnemonic(KeyEvent.VK_T);
		btnPrevious.setMnemonic(KeyEvent.VK_P);
		btnNext.setMnemonic(KeyEvent.VK_N);
		btnBottom.setMnemonic(KeyEvent.VK_B);
		btnExit.setMnemonic(KeyEvent.VK_X);
		
		try {
			//安装驱动程序
			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
			//连接数据库
			conn=DriverManager.getConnection("jdbc:odbc:student");
			//创建SQL语句
			stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
					ResultSet.CONCUR_READ_ONLY);
			//执行SQL语句获取结果集
			rs=stmt.executeQuery("select * from studentbase");
			//计算总记录数
			while(rs.next()){
				recCount++;
			}
			//显示第一条记录		
			rs.first();						
			this.setTitle("显示学生表记录"+" 当前记录:"+rs.getRow());
			txtNumber.setText(rs.getString("学号"));
			txtName.setText(rs.getString("姓名"));
			txtSex.setText(rs.getString("性别"));
			txtAge.setText(rs.getString("年龄"));
			txtDepartment.setText(rs.getString("系名"));			
		} catch (ClassNotFoundException e) {			
			JOptionPane.showMessageDialog(null,e.getMessage(),"显示学生表记录",JOptionPane.ERROR_MESSAGE);
		} catch (SQLException e) {			
			JOptionPane.showMessageDialog(null,"表中没有记录!","显示学生表记录",JOptionPane.ERROR_MESSAGE);
			btnTop.setEnabled(false);
			btnPrevious.setEnabled(false);
			btnNext.setEnabled(false);
			btnBottom.setEnabled(false);		
		}		
		
		//注册监听器
		btnTop.addActionListener(this);
		btnPrevious.addActionListener(this);
		btnNext.addActionListener(this);
		btnBottom.addActionListener(this);
		btnExit.addActionListener(this);				
	}

	//编写事件处理代码
	public void actionPerformed(ActionEvent e) {
		if(e.getSource()==btnTop){
			try {
				rs.first();					
				this.setTitle("显示学生表记录"+" 当前记录:"+rs.getRow());
				txtNumber.setText(rs.getString("学号"));
				txtName.setText(rs.getString("姓名"));
				txtSex.setText(rs.getString("性别"));
				txtAge.setText(rs.getString("年龄"));
				txtDepartment.setText(rs.getString("系名"));
			} catch (SQLException e1) {					
			}							
		}else if(e.getSource()==btnPrevious){
			try {
				if(rs.getRow()>1){
					rs.previous();
				}else{
					JOptionPane.showMessageDialog(null, "已到第一条记录!", "编辑学生表记录",
							JOptionPane.WARNING_MESSAGE);	
				}			
				this.setTitle("显示学生表记录"+" 当前记录:"+rs.getRow());
				txtNumber.setText(rs.getString("学号"));
				txtName.setText(rs.getString("姓名"));
				txtSex.setText(rs.getString("性别"));
				txtAge.setText(rs.getString("年龄"));
				txtDepartment.setText(rs.getString("系名"));
			} catch (SQLException e1) {				
			}						
		}else if(e.getSource()==btnNext){
			try {
				if(rs.getRow()<recCount){
					rs.next();				
				}else{
					JOptionPane.showMessageDialog(null, "已到最后一条记录!", "编辑学生表记录",
							JOptionPane.WARNING_MESSAGE);
				}			
				this.setTitle("显示学生表记录"+" 当前记录:"+rs.getRow());
				txtNumber.setText(rs.getString("学号"));
				txtName.setText(rs.getString("姓名"));
				txtSex.setText(rs.getString("性别"));
				txtAge.setText(rs.getString("年龄"));
				txtDepartment.setText(rs.getString("系名"));
			} catch (SQLException e1) {				
			}					
		}else if(e.getSource()==btnBottom){
			try {
				rs.last();
				this.setTitle("显示学生表记录"+" 当前记录:"+rs.getRow());
				txtNumber.setText(rs.getString("学号"));
				txtName.setText(rs.getString("姓名"));
				txtSex.setText(rs.getString("性别"));
				txtAge.setText(rs.getString("年龄"));
				txtDepartment.setText(rs.getString("系名"));
			} catch (SQLException e1) {					
			}			
		}else if(e.getSource()==btnExit){
			this.dispose();
		}
	}
	
	//主方法
	public static void main(String[] args) {
		new DisplayStudent("显示学生记录");
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -