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

📄 stuaddquerysysapp4.java

📁 学生地址查询系统
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
import javax.swing.UIManager;
import java.awt.*;
import java.awt.event.*;
import java.lang.*;
import java.lang.Object.*;
import java.sql.*;
import java.util.*;
import javax.swing.*;
import javax.swing.event.*;
import javax.swing.table.*;
public class StuAddQuerySysApp{
	private boolean packFrame = false;
	public StuAddQuerySysApp(){
		StuAddQuerySysFrame frame = new StuAddQuerySysFrame();
		if(packFrame){
			frame.pack();
			}
		else{
			frame.validate();
			}
		Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
		Dimension frameSize = frame.getSize();
		if (frameSize.height > screenSize.height){
			frameSize.height = screenSize.height-100;
			}
		if (frameSize.width>screenSize.width){
			frameSize.width=screenSize.width;
			}
		frame.setLocation((screenSize.width-frameSize.width)/2,(screenSize.height
		-frameSize.height)/2);
	    frame.setVisible(true);
		}
	
	public static void main(String[] args){
		try{
			UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
			}
		catch(Exception e){
			e.printStackTrace();
			}
		new StuAddQuerySysApp();	
	}
}
class StuAddQuerySysFrame extends JFrame{
	private JPanel contentPane;
	private FlowLayout xYLayout1 = new FlowLayout();//构造XYLayout布局管理器
	//创建显示信息使用的组件
	private Label label1 = new Label();
	private TextField stunumField = new TextField(10);
	private TextField nameField = new TextField(15);
	private Label label2 = new Label();
	private TextField ageField = new TextField(8);
	private Label label3 = new Label();
	private TextField sexField = new TextField(8);
	private Label label4 = new Label();
	private TextField departmentField = new TextField(18);
	private Label label5 = new Label();
	private TextField teleField = new TextField(12);
	private Label label6 = new Label();
	private TextField emailField = new TextField(18);
	private Label label7 = new Label();
	private Button addrecordButton = new Button();
	private Button deleteButton = new Button();
	private Button refreshButton = new Button();
	private Button stunumqueryButton = new Button();
	private Button allrecordButton = new Button();
	Vector vector;                                   //声明一个向量对象
	String title[] = {"学号","姓名","年龄","性别","系名","电话","email地址"};
	Connection  connection = null ;                  //声明Connection接口对象
	ResultSet rSet = null;
	Statement statement = null;
	AbstractTableModel tm;
	public StuAddQuerySysFrame(){
      enableEvents(AWTEvent.WINDOW_EVENT_MASK);
      try{
      	jbInit();
      	}
      catch(Exception e){
      	e.printStackTrace();
      	}
	}
	private void jbInit() throws Exception{
		contentPane =(JPanel)this.getContentPane();
		//初始化组件
		label1.setText("学号");
		contentPane.setLayout(xYLayout1);
		this.setSize(new Dimension(550,350));
		this.setTitle("学生地址表查询系统");
		label2.setText("姓名");
		label3.setText("年龄");
		label4.setText("性别");
		label5.setText("系别");
		label6.setText("电话");
		label7.setText("EMAIL地址");
		addrecordButton.setLabel("添加");
		deleteButton.setLabel("删除");
		refreshButton.setLabel("更新");
		stunumqueryButton.setLabel("学号查询");
		allrecordButton.setLabel("全部记录");
	    addrecordButton.addActionListener(new java.awt.event.ActionListener(){
	    //注册按钮事件监听对象,实现ActionListener接口的actPerformed方法
            public void actionPerformed(ActionEvent e){
        	    addrecordButton_actionPerformed(e);
        	}
		});
		deleteButton.addActionListener(new java.awt.event.ActionListener(){
			public void actionPerformed(ActionEvent e){
				deleteButton_actionPerformed(e);
			}
		   });
		refreshButton.addActionListener(new java.awt.event.ActionListener(){
			public void actionPerformed(ActionEvent e){
				refreshButton_actionPerformed(e);
			}
		   });
		stunumqueryButton.addActionListener(new java.awt.event.ActionListener(){
			public void actionPerformed(ActionEvent e) {
				stunumqueryButton_actionPerformed(e);
			    }
			});
		allrecordButton.addActionListener(new java.awt.event.ActionListener(){
			public void actionPerformed(ActionEvent e){
				allrecordButton_actionPerformed(e);
			    }
		    });
		contentPane.add(label1);
		contentPane.add(stunumField);
		contentPane.add(label2);
		contentPane.add(nameField);
		contentPane.add(label3);
		contentPane.add(ageField);
		contentPane.add(label4);
		contentPane.add(sexField);
		contentPane.add(label5);
		contentPane.add(departmentField);
		contentPane.add(label6);
		contentPane.add(teleField);
		contentPane.add(label7);
		contentPane.add(emailField);
		contentPane.add(addrecordButton);
		contentPane.add(deleteButton);
		contentPane.add(refreshButton);
		contentPane.add(stunumqueryButton);
		contentPane.add(allrecordButton);
		createtable();                  //在初始化函数中调用createtable()函数显示表格
		
   }
   void createtable(){
   	  JTable table;
   	  JScrollPane scroll;
   	  vector = new Vector();
   	  tm = new AbstractTableModel(){
   	  	public int getColumnCount(){
   	  		return title.length;
   	  	}
   	  	public int getRowCount(){
   	  		return vector.size();
   	  	}
   	  	public Object getValueAt(int row,int column){
   	  		if(!vector.isEmpty()){
   	  			return ((Vector)vector.elementAt(row)).elementAt(column);
   	  		}
   	  		else{
   	  			return null;
   	  			}
   	    }
   	public void setValueAt(Object value,int row,int column){
   		//数据模型不可编辑,该方法设置为空
   	}
   	    public String getColumnName(int column){              //取得表格列名
   		    return title[column];
   	    }
        public Class getColumnClass(int c){                    //取得所属对象类
    	    return getValueAt(0,c).getClass();
        }
    public boolean isCellEditable(int row,int column){
    	//设置单元格不可编辑,为缺省实现
    	return false;
    }
   };
        table = new JTable(tm);                             //生成自己的数据模型
        table.setToolTipText("Display Query Result");       //设置帮助提示
        table.setAutoResizeMode(table.AUTO_RESIZE_OFF);     //设置表格调整尺寸模式
        table.setCellSelectionEnabled(false);               //设置单元格选择方式
        table.setShowHorizontalLines(true);       //设置是否显示单元格之间的分割线
        table.setShowVerticalLines(true);
        scroll = new JScrollPane(table);
        scroll.setPreferredSize(new Dimension(530,200));
        contentPane.add(scroll);
  }
	protected void processWindowEvent(WindowEvent e){
		super.processWindowEvent(e);
		if(e.getID()==WindowEvent.WINDOW_CLOSING){
			System.exit(0);
		}
	}
//向表studentbase和studentaddress插入记录
    void addrecordButton_actionPerformed(ActionEvent e){
    //处理addrecordButton(添加按钮)的ActionEvent
      try{
      	Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");//实例化JDBC-ODBC桥的驱动
      	String url = "jdbc:odbc:student";             //设置连接字符串
      	connection = DriverManager.getConnection(url);//连接数据库
      	//创建Statement接口对象
      	statement = connection.createStatement();
      	String sql1 = "insert into studentbase(学号,姓名,年龄,性别,系别) values ("
      		 + Integer.parseInt(stunumField.getText()) + ",'"+nameField.getText()+"',"
      		+Integer.parseInt(ageField.getText())+",'"+sexField.getText()+"','"+
      		departmentField.getText()+"')";
      	String sql2 = "insert into studentaddress(电话,email地址,学号) values ('"
        + teleField.getText()+"','"+emailField.getText()+"',"+Integer.parseInt
      	(stunumField.getText())+")";
      	statement.executeUpdate(sql2);
      	//执行增加辛的数据记录语言,向studentaddress表中添加记录
      	statement.executeUpdate(sql1);
      	//执行增加辛的数据记录语言,向studentbase表中添加记录
      	     stunumField.setText("");
      	     nameField.setText("");
      	     ageField.setText("");
      	     sexField.setText("");
      	     departmentField.setText("");
      	     teleField.setText("");
      	     emailField.setText("");
       }
       catch(SQLException ex){
          	System.out.println("\nERROR:-----SQLException-----\n");
          	while(ex!=null){
          		System.out.println("Message:"+ex.getMessage());
          		System.out.println("SQLState:"+ex.getSQLState());
          		System.out.println("ErrorCode:"+ex.getErrorCode());
          		ex = ex.getNextException();
          	}
       }
       catch(Exception ex){
       	    ex.printStackTrace();
       }
       finally{
       	  try{
       	  	if(statement!=null)  {
       	  		statement.close();                //关闭Statement接口实例
       	  	}
       	  	if(connection!=null)  {
       	  	    connection.close();               //关闭Connection接口实例
       	  	}
       	  }
       	  catch(SQLException ex){
       	  	System.out.println("\nERROR:-----SQLException-----\n");
       	  	System.out.println("Message:"+ex.getMessage());
          	System.out.println("SQLState:"+ex.getSQLState());
          	System.out.println("ErrorCode:"+ex.getErrorCode());
       	  }
       }
       
    }

⌨️ 快捷键说明

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