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

📄 comform_score.java

📁 课程设计-学生成绩管理系统
💻 JAVA
字号:
import java.awt.*;
import java.sql.*;
import java.util.*;  
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Scanner;
import java.sql.PreparedStatement;
import javax.swing.*;
import javax.swing.event.ListSelectionEvent;
public class Comform_score extends JFrame implements ActionListener
{
	static String selected;
	Connection connection;     
	Statement statement;     
	ResultSet resultSet;     
	ResultSetMetaData rsMetaData; 
	
	GridBagLayout gbl=new GridBagLayout();
    GridBagConstraints gbc=new GridBagConstraints();

    JPanel topanel;
	JTable table;  
	JButton comform,fanhui;
	String query,shuru;

	public Comform_score()
	{
		super.setSize(800,400);
		super.setLocation(180,80);
		String url="jdbc:odbc:StudentScore";     
	    String username="sa";     
	    String password=""; 
	  
	    topanel=new JPanel();
	    comform=new JButton("确认");
	    comform.addActionListener(this);
	    fanhui=new JButton("返回");
	    fanhui.addActionListener(this);
	    set(0,0,1,1,topanel,comform);set(1,0,1,1,topanel,fanhui);
	    try 
	    {         
	    	Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");     
	        connection=DriverManager.getConnection(url,username,password);     
	    }     
	    catch(ClassNotFoundException cnfex)  
	    {  
	    	System.err.println( "装载JDBC/ODBC驱动程序失败。");     
	        cnfex.printStackTrace();     
	        System.exit(1);    
	    }     
	    catch(SQLException sqlex)  
	    {
	    	System.err.println("无法连接数据库");     
	        sqlex.printStackTrace();     
	        System.exit(1);
	    }   
	    table=new JTable();     
	    Container c=getContentPane();       
	    c.add(topanel,BorderLayout.NORTH);     
	    c.add(table,BorderLayout.CENTER);  
	    String _query="select * from score where legal='n'";
	    getTable(_query);  
	  }  
	public void set(int x,int y,int w,int h,JPanel com,Component zujian)
    {
   	 gbc.anchor=GridBagConstraints.NORTH;
   	 gbc.gridx=x;
   	 gbc.gridy=y;
   	 gbc.gridwidth=w;
   	 gbc.gridheight=h;
   	 gbl.setConstraints(com, gbc);
   	 com.add(zujian);
    }
	 public void actionPerformed(ActionEvent e)
	 { 
		 Object obj=e.getSource();
		 if(obj==comform)
		 {
			String query="update score set legal='y' where score_id="+selected;
			try
			{
				JOptionPane.showMessageDialog(this, "确定修改吗?", "错误",JOptionPane.QUESTION_MESSAGE);
				statement =connection.createStatement();     
			    resultSet=statement.executeQuery(query);
			    table.validate();//shua xin biao ge.
			}
			catch(SQLException sql)
			{
				//System.out.println(sql.getMessage());
			}
		 }
		 if(obj==fanhui)
		 {
			 this.dispose();
			 Admin_manage admin=new Admin_manage();
			 admin.setVisible(true);
		 }
	 }
	 private void getTable(String query)
	 {
		 try
		 {    
			 statement =connection.createStatement();     
			 resultSet=statement.executeQuery(query);
			 displayResultSet(resultSet); 
		 }
		 catch(SQLException sqlex)  
		 {   
			 //sqlex.printStackTrace();         
	     }  
	 }
	 private 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)
	    	 { 
	    		 public void valueChanged(ListSelectionEvent e)
	             { 
	                 super.valueChanged(e); 
	                 if (!this.isVisible()) 
	                 { 
	                     return; 
	                 } 
	                 ListSelectionModel sm =(ListSelectionModel)e.getSource(); 
	                 int row = sm.getLeadSelectionIndex(); 
	                 selected=(String)table.getValueAt(row,0);
	                 System.out.println(selected);
	             } 	    		 
	         }; 
	    	 
	    	 JScrollPane scroller=new JScrollPane(table);     
	    	Container c=getContentPane();     
	    	 c.remove(1);   
	    	 c.add(scroller,BorderLayout.CENTER);       
	    	  //刷新Table   
	    	 c.validate(); 
	     }
	     catch(SQLException  sql)
	     {
	    	 //sql.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;     	    
	 }     
	 public void   shutDown()      
	 {     
	  try   
	  {       
	  //断开数据库连接      
	     connection.close();     
	  }       
	  catch(SQLException sqlex)   
	  {  
		  System.err.println(   "Unable   to   disconnect"   );     
	      //sqlex.printStackTrace();       
	  }     
	    
     }     
	public static void main(String[] args)
	{
		Comform_score xian=new Comform_score();
		xian.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		xian.setVisible(true);
	}

}

⌨️ 快捷键说明

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