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

📄 displayframe.java

📁 学生宿舍管理系统
💻 JAVA
字号:
import java.sql.*;

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

import java.util.*;

public class DisplayFrame extends JFrame {

	private JTable table;// 定义一个表控件;
	private ResultSet rs;
	Statement sql;
	Connection con;
	Icon icon4 = new ImageIcon("image/caidanx.GIF");
	JButton sureBtn=new JButton("确定",icon4);

	// 构件器
	DisplayFrame(String query){

		setTitle("学生信息");
		JPanel topPanel = new JPanel();// 定义一个面版

		topPanel.setLayout(new BorderLayout());// 把布局转换器设置成上下左右中的形式

		table = new JTable();

		Container c = getContentPane();// 定义一个容器

		c.setLayout(new BorderLayout());// 设置容器的布局;

		c.add(topPanel, BorderLayout.NORTH);// 将"topPanel"编辑框布置到 "NORTH"

		c.add(table, BorderLayout.CENTER);// 将"table"编辑框布置到 "CENTER"
		c.add(sureBtn,BorderLayout.SOUTH);
		sureBtn.addActionListener(null);
		getTable(query);
		
		setSize(600,400);
		setLocation(320,220);		
		addWindowListener(new WindowAdapter() {
			public void windowClosing(WindowEvent e) {
				setVisible(false);
				dispose();
			}
		});
		setVisible(true);
		validate();
	}
	
	private void getTable(String query)

	{
		try {
			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		try {

			con=DriverManager.getConnection("jdbc:odbc:information","","");
			sql=con.createStatement();

			rs = sql.executeQuery(query);// 连接并查询数据库;

			displayResultSet(rs);// 放到displayResultSet方法中处理,在表格中显示查询结果

		}

		catch (SQLException sqlex) {

			sqlex.printStackTrace();

		}

	}

	public void displayResultSet(ResultSet rs)

	throws SQLException

	{
		boolean moreRecords = rs.next(); // 定位到达第一条记录

		// 如果没有记录,则提示一条消息

		if (!moreRecords) {

			JOptionPane.showMessageDialog(this,

			"结果集中无记录");
			setTitle("无记录");
			return;

		}

		Vector columnHeads = new Vector();

		Vector rows = new Vector();

		try {
			ResultSetMetaData rsmd = rs.getMetaData();
			for (int i = 1; i <= rsmd.getColumnCount(); ++i)
				columnHeads.addElement(rsmd.getColumnName(i));

			do {

				rows.addElement(getNextRow(rs, rsmd));

			} while (rs.next());

			// 在表格中显示查询结果

			table = new JTable(rows, columnHeads);

			JScrollPane scroller = new JScrollPane(table);

			Container c = getContentPane();

			c.remove(1);

			c.add(scroller, BorderLayout.CENTER);
			// 刷新Table
			c.validate();
		}
		catch (SQLException sqlex) {
			sqlex.printStackTrace();
		}
	}

	private Vector getNextRow(ResultSet rs,
	ResultSetMetaData rsmd)
	throws SQLException
	{
		Vector currentRow = new Vector();
		for (int i = 1; i <= rsmd.getColumnCount(); ++i)
			currentRow.addElement(rs.getString(i));
		// 返回一条记录
		return currentRow;
	}
}

⌨️ 快捷键说明

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