📄 jdbcsample.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 + -