📄 searchinfo.java
字号:
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
import java.lang.*;
import java.sql.*;
/**
* <p>Title: 学生信息管理系统</p>
* <p>Description: 课程设计项目</p>
* <p>Copyright: Copyright (c) 2006</p>
* <p>Company: </p>
* @author:leigangwang
**/
public class SearchInfo extends JFrame
{
/**************声明变量************/
String strurl;
Connection conn;
Statement stmt;
ResultSet rs;
private JPanel ContentPane;
private JLabel jlabNum = new JLabel();//学号
private JLabel jlabName = new JLabel();//姓名
private JLabel jlabChoice = new JLabel();
private JTextField jtextfieldNum = new JTextField();
private JTextField jtextfieldName = new JTextField();
private JButton jsure = new JButton();
private JLabel jlab1 = new JLabel();//学号
private JLabel jlab2 = new JLabel();//姓名
private JLabel jlab3 = new JLabel();//性别
private JLabel jlab4 = new JLabel();//出生日期
private JLabel jlab5 = new JLabel();//政治面貌
private JLabel jlab6 = new JLabel();//籍贯
private JLabel jlab7 = new JLabel();//系别
private JLabel jlab8 = new JLabel();//专业
private JLabel jlab9 = new JLabel();//备注
private JTextField jtextfield1 = new JTextField();//学号
private JTextField jtextfield2 = new JTextField();//姓名
private JTextField jtextfield3 = new JTextField();//出生日期
private JTextField jtextfield4 = new JTextField();//籍贯
private JTextField jtextfield5 = new JTextField();//专业
private JComboBox jcombobox1 = new JComboBox();//性别
private JComboBox jcombobox2 = new JComboBox();//政治面貌
private JComboBox jcombobox3 = new JComboBox();//系别
private JTextArea jtextarea = new JTextArea();//备注
//private JButton jnext2 = new JButton();
/***************声明方法***************/
public SearchInfo()
{
ContentPane = (JPanel)this.getContentPane();
ContentPane.setLayout(null);
this.setTitle("学生信息查询");
this.setSize(400,400);
/*设置查询界面的第一步*/
jlabNum.setText("学号");
jlabNum.setVisible(true);
jlabNum.setBounds(new Rectangle(124, 86, 28, 16));
jlabName.setText("姓名");
jlabName.setVisible(true);
jlabName.setBounds(new Rectangle(124, 130, 28, 16));
jlabChoice.setText("请你选择查询条件");
jlabChoice.setFont(new Font("Dialog", 1, 12));
jlabChoice.setForeground(Color.red);
jlabChoice.setVisible(true);
jlabChoice.setBounds(new Rectangle(144, 36, 130, 30));
jtextfieldNum.setText("");
jtextfieldNum.setBounds(new Rectangle(177, 83, 83, 22));
jtextfieldNum.setVisible(true);
jtextfieldName.setText("");
jtextfieldName.setBounds(new Rectangle(178, 127, 83, 22));
jtextfieldName.setVisible(true);
jsure.setText("确定");
jsure.setVisible(true);
jsure.setBounds(new Rectangle(164, 177, 73, 22));
jsure.addActionListener(new button_actionPerformed());
/*显示学生详细信息的界面*/
jlab1.setText("学号");
jlab1.setVisible(false);
jlab1.setBounds(new Rectangle(30, 11, 51, 33));
jlab2.setText("姓名");
jlab2.setVisible(false);
jlab2.setBounds(new Rectangle(162, 11, 28, 33));
jlab3.setText("性别");
jlab3.setVisible(false);
jlab3.setBounds(new Rectangle(241, 11, 28, 33));
jlab4.setText("出生日期");
jlab4.setVisible(false);
jlab4.setBounds(new Rectangle(31, 53, 55, 33));
jlab5.setText("政治面貌");
jlab5.setVisible(false);
jlab5.setBounds(new Rectangle(241, 53, 55, 33));
jlab6.setText("籍贯");
jlab6.setVisible(false);
jlab6.setBounds(new Rectangle(163, 53, 26, 33));
jlab7.setText("系 别");
jlab7.setVisible(false);
jlab7.setBounds(new Rectangle(30, 94, 50, 33));
jlab8.setText("专业");
jlab8.setVisible(false);
jlab8.setBounds(new Rectangle(163, 94, 26, 33));
jlab9.setText("备 注");
jlab9.setVisible(false);
jlab9.setBounds(new Rectangle(27, 132, 50, 33));
//jnext2.setText("下一条");
//jnext2.setVisible(false);
//jnext2.setBounds(new Rectangle(153, 242, 94, 22));
//jnext2.addActionListener(new button_actionPerformed());
jtextfield1.setText("");//学号
jtextfield1.setVisible(false);
jtextfield1.setBounds(new Rectangle(86, 16, 74, 22));
jtextfield2.setText("");//姓名
jtextfield2.setVisible(false);
jtextfield2.setBounds(new Rectangle(192, 16, 44, 22));
jtextfield3.setText("");//出生日期
jtextfield3.setVisible(false);
jtextfield3.setBounds(new Rectangle(86, 58, 74, 22));
jtextfield4.setText("");//籍贯
jtextfield4.setVisible(false);
jtextfield4.setBounds(new Rectangle(191, 58, 44, 22));
jtextfield5.setText("");//专业
jtextfield5.setVisible(false);
jtextfield5.setBounds(new Rectangle(190, 99, 178, 22));
/********************添加下拉菜单的选象**********************/
jcombobox1.setBounds(new Rectangle(275, 15, 50, 25));
jcombobox1.setVisible(false);
jcombobox1.addItem("男");
jcombobox1.addItem("女");
/***************添加下拉菜单的选象***************/
jcombobox2.setBounds(new Rectangle(296, 57, 72, 25));
jcombobox2.setVisible(false);
jcombobox2.addItem("团员");
jcombobox2.addItem("党员");
jcombobox2.addItem("其他");
/************添加下拉菜单的选象******************/
jcombobox3.setBounds(new Rectangle(86, 98, 75, 25));
jcombobox3.setVisible(false);
jcombobox3.addItem("信息系");
jcombobox3.addItem("经济系");
jcombobox3.addItem("机电系");
jcombobox3.addItem("管理系");
jcombobox3.addItem("旅游系");
jcombobox3.addItem("外语系");
jtextarea.setText("");
jtextarea.setVisible(false);
jtextarea.setBounds(new Rectangle(84, 139, 285, 92));
/***********将控件添加到面板中去********/
ContentPane.add(jlabNum);
ContentPane.add(jlabName);
ContentPane.add(jlabChoice);
ContentPane.add(jtextfieldNum);
ContentPane.add(jtextfieldName);
ContentPane.add(jsure);
/**************把各个控件加到面板中去************/
ContentPane.add(jlab1);
ContentPane.add(jlab2);
ContentPane.add(jlab3);
ContentPane.add(jlab4);
ContentPane.add(jlab5);
ContentPane.add(jlab6);
ContentPane.add(jlab7);
ContentPane.add(jlab8);
ContentPane.add(jlab9);
/**************将文本框加到面板中去***********/
ContentPane.add(jtextfield1);
ContentPane.add(jtextfield2);
ContentPane.add(jtextfield3);
ContentPane.add(jtextfield4);
ContentPane.add(jtextfield5);
/************将下拉框添加到面板中***********/
ContentPane.add(jcombobox1);
ContentPane.add(jcombobox2);
ContentPane.add(jcombobox3);
/**************将文本区域和命令按钮添加************/
ContentPane.add(jtextarea);
//ContentPane.add(jnext2);
this.setVisible(true);
}
/****************设置动作按钮的监听**********/
class button_actionPerformed implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
try
{
/****************连接数据库(JDBC)******************/
String strurl = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=student.mdb";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn = DriverManager.getConnection(strurl);
Statement stmt = conn.createStatement();
/**********对命令按钮进行判断*********/
if(e.getSource()==jsure)
{
/********对文本框中的值进行判断******/
if(jtextfieldNum.getText().trim().equals("")||jtextfieldName.getText().trim().equals(""))
{
/*************按照或查询**********8*/
rs = stmt.executeQuery("select * from StuInfo where 学号='"+jtextfieldNum.getText()+"' or 姓名='"+jtextfieldName.getText()+"'");
}
else if(jtextfieldNum.getText().trim().equals("")&&jtextfieldName.getText().trim().equals(""))
{
/***********按照与查询***********/
JOptionPane.showMessageDialog(null, "请至少输入一个条件", "警告",JOptionPane.WARNING_MESSAGE);
}
else
rs = stmt.executeQuery("select * from StuInfo where 学号='"+jtextfieldNum.getText()+"' and 姓名='"+jtextfieldName.getText()+"'");
/***********如果记录集中存在***********/
if(rs.next())
{
/******设置各个标签的可见性*****/
jlabNum.setVisible(false);
jlabName.setVisible(false);
jsure.setVisible(false);
jlabChoice.setVisible(false);
jtextfieldNum.setVisible(false);
jtextfieldName.setVisible(false);
jlab1.setVisible(true);//学号
jlab2.setVisible(true);//姓名
jlab3.setVisible(true);//性别
jlab4.setVisible(true);//出生日期
jlab5.setVisible(true);//政治面貌
jlab6.setVisible(true);//籍贯
jlab7.setVisible(true);//系别
jlab8.setVisible(true);//专业
jlab9.setVisible(true);//备注
/*****各个标签中得到查询的相应结果*****/
jtextfield1.setVisible(true);//学号
jtextfield1.setText(rs.getString("学号"));
jtextfield1.enable(false);
jtextfield2.setVisible(true);//姓名
jtextfield2.setText(rs.getString("姓名"));
jtextfield3.setVisible(true);//出生日期
jtextfield3.setText((rs.getString("出生日期")).substring(0,10));
jtextfield4.setVisible(true);//籍贯
jtextfield4.setText(rs.getString("籍贯"));
jtextfield5.setVisible(true);//专业
jtextfield5.setText(rs.getString("专业"));
/**************下拉列表框的相关设置*********/
//下拉列表框中无法显示从数据库中读出的数据
jcombobox1.setVisible(true);//性别
String sex1=rs.getString("性别");
jcombobox1.setSelectedItem(sex1);
jcombobox2.setVisible(true);//政治面貌
String zhengzhimianmao=rs.getString("政治面貌");
jcombobox2.setSelectedItem(zhengzhimianmao);
jcombobox3.setVisible(true);//系别
String xibie=rs.getString("系别");
jcombobox3.setSelectedItem(xibie);
jtextarea.setVisible(true);
jtextarea.setText(rs.getString("备注"));
//jnext2.setVisible(true);
}
else
JOptionPane.showMessageDialog(null, "无此条件对应信息", "警告",
JOptionPane.WARNING_MESSAGE);
}
}
catch (Exception ee)
{
ee.printStackTrace();
}
}
}
/*public static void main(String args[])
{
new SearchInfo();
}*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -