Java程序设计 11 3.4.1 添加数据:
/*添加数据*/
import javax.swing.*; import java.awt.*;
import java.awt.event.*; import java.sql.*;
public class AddForm extends JFrame implements ActionListener {
JLabel labName=new JLabel(\姓名:\ JLabel labDate=new JLabel(\出生日期:\ JLabel labScore=new JLabel(\成绩:\ JTextField txtName=new JTextField(20); JTextField txtDate=new JTextField(18); JTextField txtScore=new JTextField(20); JButton btnAdd=new JButton(\添加\ JButton btnCancel=new JButton(\取消\ JPanel pan=new JPanel(); JPanel pan1=new JPanel(); JPanel pan2=new JPanel(); JPanel pan3=new JPanel(); JPanel pan4=new JPanel(); Connection con; Statement sql; ResultSet rs; AddForm() {
super(\添加数据\ setSize(400,300); pan1.add(labName); pan1.add(txtName); pan2.add(labDate); pan2.add(txtDate); pan3.add(labScore); pan3.add(txtScore); pan4.add(btnAdd); pan4.add(btnCancel);
pan.setLayout(new GridLayout(3,1)); pan.add(pan1); pan.add(pan2); pan.add(pan3);
getContentPane().add(pan,\ getContentPane().add(pan4,\ btnAdd.addActionListener(this); btnCancel.addActionListener(this);
Java程序设计 btnAdd.setEnabled(true); txtDate.setEditable(true); txtScore.setEditable(true); setVisible(true);
txtName.requestFocus(); }
public void actionPerformed(ActionEvent ae) {
String recode,insert1,出生日期,姓名; int 成绩;
if(ae.getSource()==btnCancel) {
this.dispose(); }
else if(ae.getSource()==btnAdd) {
try {
Class.forName(\ catch(ClassNotFoundException e){ }
try{con=DriverManager.getConnection(\ sql=con.createStatement(); 姓名=txtName.getText(); 出生日期=txtDate.getText();
成绩=Integer.parseInt(txtScore.getText());
recode=\姓名+\出生日期+\成绩+\
insert1=\成绩表 VALUES \ sql.executeUpdate(insert1);
System.out.println(\记录添加完毕!\ btnAdd.setEnabled(false); txtName.setText(\ txtScore.setText(\ txtDate.setText(\ con.close(); }
catch(SQLException e){ } } }
public static void main(String[] args) {
12
Java程序设计 }
new AddForm(); }
13 3.4.2 运行效果:
3.5.1 按姓名查询数据:
/*按姓名查询数据*/ import javax.swing.*; import java.awt.*;
import java.awt.event.*; import java.sql.*;
public class NameQueryForm extends JFrame implements ActionListener {
JLabel labName=new JLabel(\姓名:\ JLabel labDate=new JLabel(\出生日期:\ JLabel labScore=new JLabel(\成绩:\ JTextField txtName=new JTextField(20); JTextField txtDate=new JTextField(18); JTextField txtScore=new JTextField(20); JButton btnCancel=new JButton(\取消\ JButton btnQuery=new JButton(\查询\ JPanel pan=new JPanel(); JPanel pan1=new JPanel(); JPanel pan2=new JPanel(); JPanel pan3=new JPanel(); JPanel pan4=new JPanel(); Connection con; Statement sql; ResultSet rs;
Java程序设计 14 NameQueryForm() {
super(\按姓名查询\ setSize(400,300); pan1.add(labName); pan1.add(txtName); pan2.add(labDate); pan2.add(txtDate); pan3.add(labScore); pan3.add(txtScore); pan4.add(btnQuery); pan4.add(btnCancel);
pan.setLayout(new GridLayout(3,1)); pan.add(pan1); pan.add(pan2); pan.add(pan3);
getContentPane().add(pan,\ getContentPane().add(pan4,\ btnQuery.addActionListener(this); btnCancel.addActionListener(this); txtDate.setEditable(false); txtScore.setEditable(false); setVisible(true);
txtName.requestFocus(); }
public void actionPerformed(ActionEvent ae){ if(ae.getSource()==btnCancel){ dispose();
} else if(ae.getSource()==btnQuery){ try{
Class.forName(\ catch(ClassNotFoundException e){ }
try{con=DriverManager.getConnection(\ sql=con.createStatement();
rs=sql.executeQuery(\成绩表 where 姓名='\ if(rs.next()){
txtName.setText(rs.getString(\姓名\
txtScore.setText(new Integer(rs.getInt(\成绩\
txtDate.setText(rs.getDate(\出生日期\ }else{
System.out.println(\不存在该记录! \
Java程序设计 txtName.setText(\ txtScore.setText(\ txtDate.setText(\ txtName.requestFocus(); }
}catch(SQLException e){ } } }
public static void main(String[] args) { new NameQueryForm(); } }
15 3.5.2 运行效果:
3.6.1 按成绩查询数据:
/*按成绩查询数据*/ import javax.swing.*; import java.awt.*;
import java.awt.event.*; import java.sql.*;
import javax.swing.table.DefaultTableModel; import javax.swing.table.JTableHeader;
public class ScoreQueryForm extends JFrame implements ActionListener {
JLabel labScore=new JLabel(\请输入成绩:\ JTextField txtScore=new JTextField(10); JButton btnQuery=new JButton(\查询\ JPanel pan1=new JPanel();