📄 frame3.java
字号:
package 桀骜学管理系统;
import java.awt.Dimension;
import java.sql.*;
import com.borland.dx.sql.dataset.Database;
import com.borland.dx.sql.dataset.*;
import java.awt.*;
import javax.swing.JLabel;
import com.borland.jbcl.layout.XYLayout;
import com.borland.jbcl.layout.*;
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.table.TableModel;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.ResultSetMetaData;
import javax.swing.table.DefaultTableModel;
import java.sql.Connection;
import javax.swing.JOptionPane;
public class Frame3 extends JFrame {
Connection connect;
String url="jdbc:odbc:task";
private DefaultTableModel defaultTableModel1=new DefaultTableModel();
private DefaultTableModel defaultTableModel2=new DefaultTableModel();
JPanel contentPane;
Database database1 = new Database();
QueryDataSet queryDataSet1 = new QueryDataSet();
QueryDataSet queryDataSet2 = new QueryDataSet();
XYLayout xYLayout1 = new XYLayout();
JPanel jPanel1 = new JPanel();
JPanel jPanel2 = new JPanel();
XYLayout xYLayout2 = new XYLayout();
JLabel jLabel1 = new JLabel();
XYLayout xYLayout3 = new XYLayout();
JLabel jLabel2 = new JLabel();
JLabel jLabel3 = new JLabel();
JLabel jLabel4 = new JLabel();
JTextField jTextField1 = new JTextField();
JTextField jTextField2 = new JTextField();
JTextField jTextField3 = new JTextField();
JButton jButton2 = new JButton();
JButton jButton4 = new JButton();
JScrollPane jScrollPane1 = new JScrollPane();
JLabel jLabel5 = new JLabel();
JScrollPane jScrollPane2 = new JScrollPane();
JTable jTable1 = new JTable();
JTable jTable2 = new JTable();
public Frame3() {
try {
//setDefaultCloseOperation(EXIT_ON_CLOSE);
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}
/**
* Component initialization.
*
* @throws java.lang.Exception
*/
private void jbInit() throws Exception {
contentPane = (JPanel) getContentPane();
contentPane.setLayout(xYLayout1);
setSize(new Dimension(800, 600));
setTitle("课程查询");
database1.setConnection(new ConnectionDescriptor("jdbc:odbc:task",
"root", "abc", false, "sun.jdbc.odbc.JdbcOdbcDriver"));
try
{
url="jdbc:odbc:task";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
connect=DriverManager.getConnection(url,"root","abc");
}
catch (SQLException sqlex)
{
System.err.println("unable to connect");
sqlex.printStackTrace();
}
database1.setDatabaseName("");
jPanel2.setLayout(xYLayout2);
jLabel1.setText("课 号:");
jPanel1.setLayout(xYLayout3);
jLabel2.setText("课 名:");
jLabel3.setText("教研室 :");
jLabel4.setText("教 师:");
jButton2.setText("查询");
jButton2.addActionListener(new Frame3_jButton2_actionAdapter(this));
jButton4.setText("清空");
jButton4.addActionListener(new Frame3_jButton4_actionAdapter(this));
jLabel5.setText("学生选课信息:");
queryDataSet1.setQuery(new com.borland.dx.sql.dataset.QueryDescriptor(
database1, "select * from sclass", null, true, Load.ALL));
queryDataSet2.setQuery(new com.borland.dx.sql.dataset.QueryDescriptor(
database1, "select * from Tclass", null, true, Load.ALL));
jPanel1.add(jButton4, new XYConstraints(198, 398, 96, 32));
jPanel1.add(jButton2, new XYConstraints(59, 398, 96, 32));
jPanel1.add(jLabel3, new XYConstraints(67, 116, 54, 23));
jScrollPane2.getViewport().add(jTable1);
jPanel2.add(jScrollPane1, new XYConstraints(135, 41, 259, 401));
jScrollPane1.getViewport().add(jTable2);
jPanel1.add(jLabel4, new XYConstraints(69, 156, 54, 23));
jPanel1.add(jLabel2, new XYConstraints(67, 70, 54, 23));
jPanel1.add(jLabel1, new XYConstraints(67, 22, 54, 23));
jPanel1.add(jTextField2, new XYConstraints(142, 64, 174, 29));
jPanel1.add(jTextField3, new XYConstraints(142, 110, 174, 29));
contentPane.add(jPanel1, new XYConstraints(8, 57, 339, 515));
jPanel1.add(jScrollPane2, new XYConstraints(142, 159, 174, 180));
contentPane.add(jPanel2, new XYConstraints(369, 38, 427, 541));
jPanel2.add(jLabel5, new XYConstraints(48, 35, 83, 35));
jPanel1.add(jTextField1, new XYConstraints(142, 23, 174, 29));
}
public void jButton2_actionPerformed(ActionEvent e) {
try
{
Statement statement =connect.createStatement( ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE);
String query1="select * from sclass where Nclass='"+jTextField1.getText()+"'";
String query2="select Troom from tclass where Nclass='"+jTextField1.getText()+"'";
String query3="select ssn, Tname,sex,position from teacher where ssn in( select ssn from tclass where Nclass='"
+jTextField1.getText()+"' ) ";
String query4="select Sname,Grade,Ssex,result from student,gclass where Nclass='"+jTextField1.getText()+"'";
ResultSet rs1 = statement.executeQuery( query1 );
if(rs1.next())
{
jTextField2.setText( rs1.getString( "class" ) );
}
else
{
String find="无此课程";
message(find);
}
rs1 = statement.executeQuery( query2 );
if(rs1.next())
jTextField3.setText(rs1.getString("Troom"));
////////************************
rs1=statement.executeQuery(query3);
ResultSetMetaData rsmd1=rs1.getMetaData();
defaultTableModel1.setColumnCount(0);
defaultTableModel1.setRowCount(0);
for(int i=1;i<=rsmd1.getColumnCount();i++)
{
defaultTableModel1.addColumn(rsmd1.getColumnName(i));
}
int i=0;
while(rs1.next())
{
defaultTableModel1.setNumRows(i+1);
for (int j=0;j<rsmd1.getColumnCount();j++)
{
defaultTableModel1.setValueAt(rs1.getString(j+1),i,j);
}
i++;
}
//rs1.close();
jTable1.setModel((TableModel)defaultTableModel1);
//////////////*****************************************
rs1=statement.executeQuery(query4);
ResultSetMetaData rsmd2=rs1.getMetaData();
defaultTableModel2.setColumnCount(0);
defaultTableModel2.setRowCount(0);
for(int m=1;m<=rsmd2.getColumnCount();m++)
{
defaultTableModel2.addColumn(rsmd2.getColumnName(m));
}
int m=0;
while(rs1.next())
{
defaultTableModel2.setNumRows(m+1);
for (int j=0;j<rsmd2.getColumnCount();j++)
{
defaultTableModel2.setValueAt(rs1.getString(j+1),m,j);
}
m++;
}
rs1.close();
jTable2.setModel((TableModel)defaultTableModel2);
statement.close();
}
catch(Exception sqlex)
{
System.out.println("unable run ***");
sqlex.printStackTrace();
}
}
void message(String t)
{
JOptionPane.showMessageDialog(null,t);
}
public void jButton4_actionPerformed(ActionEvent e) {
jTextField1.setText("");
jTextField2.setText("");
jTextField3.setText("");
defaultTableModel1.setRowCount(0);
defaultTableModel2.setRowCount(0);
}
}
class Frame3_jButton4_actionAdapter implements ActionListener {
private Frame3 adaptee;
Frame3_jButton4_actionAdapter(Frame3 adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton4_actionPerformed(e);
}
}
class Frame3_jButton2_actionAdapter implements ActionListener {
private Frame3 adaptee;
Frame3_jButton2_actionAdapter(Frame3 adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton2_actionPerformed(e);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -