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

📄 jdbcsample.java

📁 java课程的资料以及实验的代码
💻 JAVA
字号:
import java.sql.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class JDBCsample extends JFrame implements ActionListener
{
	JLabel lname;
	JLabel lsex;
	JLabel lage;
	JTextField tname;
	JTextField tsex;
	JTextField tage;
	JButton binsert;
	JButton bquery;
	JButton bcanel;
	JPanel panel;
    JPanel tpanel;
    JTable table;
		
	public JDBCsample()  
	{	
       lname=new JLabel("Name");
		lsex=new JLabel("Sex");
		lage=new JLabel("Age");
		tname=new JTextField(20);
		tsex=new JTextField(5);
		tage=new JTextField(4);
		binsert=new JButton("Insert");
		bquery=new JButton("Query");
		bcanel=new JButton("Canel");
		panel=new JPanel();
	    tpanel=new JPanel();
	    tpanel.setVisible(false);
		panel.setLayout(null);
		lname.setBounds(30,10,50,20);
		panel.add(lname);
		tname.setBounds(100,10,100,20);
		panel.add(tname);
		lsex.setBounds(30,40,50,20);
		panel.add(lsex);
		tsex.setBounds(100,40,40,20);
		panel.add(tsex);
		lage.setBounds(30,70,50,20);
		panel.add(lage);
		tage.setBounds(100,70,25,20);
		panel.add(tage);
		binsert.setBounds(5,100,80,20);
		panel.add(binsert);
		bquery.setBounds(90,100,80,20);
		panel.add(bquery);
		bcanel.setBounds(175,100,80,20);
		panel.add(bcanel);
		binsert.addActionListener(this);
		bquery.addActionListener(this);
		bcanel.addActionListener(this);
		this.add(panel);
		this.setSize(300,200);
		this.setVisible(true);
	}
	public void actionPerformed(ActionEvent e)
	{ 
	Object obj=new Object();
	ConnectDB conn=new ConnectDB();
	obj=e.getSource();
	if(obj==binsert)
	{
		int num;		
		num=conn.InsertDB(tname.getText(),tsex.getText(),Integer.parseInt(tage.getText()));
	    if(num>0)
	    JOptionPane.showMessageDialog(null,"Insert Sucess");
	    else
	    JOptionPane.showMessageDialog(null,"Insert Fail");
	}
	else if(obj==bquery)
	{
		ResultSet result=conn.QueryDB(18);
		int icount=conn.countRec(18);
		
		String[] colHeads = { "Name", "Sex", "Age" };
		Object data[][]=new Object[icount][];
		int i=0;
		try
		{			
		while(result.next())
		{
		   data[i]=new Object[3];
		   data[i][0]=result.getString(1);
		   data[i][1]=result.getString(2);
		   data[i][2]=result.getInt(3);	
		   i++;
		}
		}
		catch(SQLException se)	
		{
			se.printStackTrace();
		}
			table=new JTable(data,colHeads);
			JScrollPane jsp = new JScrollPane(table);
			panel.setVisible(false);
			this.add(jsp,BorderLayout.CENTER);
		}
	else if(obj==bcanel)
	 {
	 	tname.setText("");
	 	tage.setText("");
	 	tsex.setText("");
	 }
	}
	public static void main(String args[])
	{
		new JDBCsample();
	}
	
	
}
class ConnectDB
{
	Connection con;
	ConnectDB()
	{
		try
		{
		Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
		//con=DriverManager.getConnection("jdbc:odbc:Student","sa","");
		
		}
		catch(Exception e)
		{
			e.printStackTrace();
		}
	}
	public int InsertDB(String name,String sex,int age)
	{		
		int num=0;
		try{
			con=DriverManager.getConnection("jdbc:odbc:Student","sa","");
		}
		catch(Exception ex)
		{
			ex.printStackTrace();
		}
		try{
		PreparedStatement pstm=con.prepareStatement("insert into student values(?,?,?)");
		pstm.setString(1,name);
		pstm.setString(2,sex);
		pstm.setInt(3,age);
		num=pstm.executeUpdate();
		pstm.close();
		con.close();
		}
		catch(Exception ee)
		{
			ee.printStackTrace();
		}
	;
		return num;
	}
	public ResultSet QueryDB(int vage)
	{
	  	ResultSet rs=null;
	  	
	  	try{
	  		con=DriverManager.getConnection("jdbc:odbc:Student","sa","");
	  		Statement stmt=con.createStatement();
	  	
	  		rs=stmt.executeQuery("select * from student where age>="+vage);
	  	}
	  	catch(Exception e)
	  	{
	  		e.printStackTrace();
	  	}
	  	
	  	return rs;
	}
	public int countRec(int vage)
	{
		int count=0;
		ResultSet rs=null;
	  	try{
	  		con=DriverManager.getConnection("jdbc:odbc:Student","sa","");
	  		Statement stmt=con.createStatement();
	  	
	  		rs=stmt.executeQuery("select count(age) from student where age>="+vage);
	  	}
	  	catch(Exception e)
	  	{
	  		e.printStackTrace();
	  	}
	  	try
	  	{
	  	
	  	rs.next();
	  	count=rs.getInt(1);
	  	rs.close();
	  	con.close();
	  	}
	  	catch(SQLException se)
	  	{
	  		se.printStackTrace();
	  	}
	  	return count;
		
	}
	
}

	

⌨️ 快捷键说明

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