?? frame1.java
字號:
package studentinfo;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.lang.*;
import java.lang.Object.*;
import java.sql.*;
import java.util.*;
import javax.swing.event.*;
import javax.swing.table.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import org.apache.crimson.tree.XmlDocument;
import org.w3c.dom.Element;
/**
* <p>
* Title: StudentINFO
* </p>
* <p>
* Description:
* </p>
* <p>
* Copyright: Copyright (c) 2006.12.20
* </p>
* <p>
* Company:buaa.cs
* </p>
*
* @author 朱亮 34060222
* @version 1.0
*/
public class Frame1 extends JFrame {
JPanel contentPane;
JLabel jLabel1 = new JLabel();
JLabel jLabel2 = new JLabel();
JLabel jLabel3 = new JLabel();
JLabel jLabel4 = new JLabel();
JTextField jTextField1 = new JTextField();
JTextField jTextField2 = new JTextField();
JTextField jTextField3 = new JTextField();
JTextField jTextField4 = new JTextField();
JButton jButton1 = new JButton();
JButton jButton2 = new JButton();
JButton jButton3 = new JButton();
JButton jButton4 = new JButton();
JButton jButton5 = new JButton();
JButton jButton6 = new JButton();
JButton jButton7 = new JButton();
String stu_info[] = { "id", "name", "major", "class" };
int 查詢記錄;
Connection connection = null;
ResultSet rSet = null;
Statement statement = null;
JMenuBar jMenuBar1 = new JMenuBar();
JMenu jMenu1 = new JMenu();
JMenu jMenuhelp = new JMenu();
JMenuItem jMenuabout = new JMenuItem();
JMenuItem jMenuexit = new JMenuItem();
JTextPane jTextPane1 = new JTextPane();
// Construct the frame
public Frame1() {
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
try {
DBOperator db = new DBOperator();
db.closeConnection();
jbInit();
} catch (Exception e) {
e.printStackTrace();
}
}
// Component initialization
private void jbInit() throws Exception {
this.setSize(new Dimension(500, 441));
this.setState(Frame.NORMAL);
this.setTitle("學生基本信息表");
contentPane = (JPanel) this.getContentPane();
contentPane.setLayout(null);
jLabel1.setFont(new java.awt.Font("Dialog", 0, 15));
jLabel1.setForeground(Color.black);
jLabel1.setDebugGraphicsOptions(0);
jLabel1.setToolTipText("");
jLabel1.setVerifyInputWhenFocusTarget(true);
jLabel1.setHorizontalAlignment(SwingConstants.RIGHT);
jLabel1.setIconTextGap(4);
jLabel1.setText("學號");
jLabel1.setBounds(new Rectangle(47, 98, 47, 23));
jLabel2.setFont(new java.awt.Font("Dialog", 0, 15));
jLabel2.setToolTipText("");
jLabel2.setHorizontalAlignment(SwingConstants.RIGHT);
jLabel2.setText("姓名");
jLabel2.setBounds(new Rectangle(40, 137, 56, 25));
jLabel3.setFont(new java.awt.Font("Dialog", 0, 15));
jLabel3.setToolTipText("");
jLabel3.setHorizontalAlignment(SwingConstants.RIGHT);
jLabel3.setText("所屬學院");
jLabel3.setBounds(new Rectangle(34, 173, 63, 27));
jLabel4.setFont(new java.awt.Font("Dialog", 0, 15));
jLabel4.setHorizontalAlignment(SwingConstants.RIGHT);
jLabel4.setText("所屬班級");
jLabel4.setBounds(new Rectangle(28, 215, 71, 29));
jTextField1.setText("");
jTextField1.setBounds(new Rectangle(106, 95, 95, 27));
jTextField2.setText("");
jTextField2.setBounds(new Rectangle(107, 136, 93, 28));
jTextField3.setText("");
jTextField3.setBounds(new Rectangle(108, 174, 91, 25));
jTextField4.setText("");
jTextField4.setBounds(new Rectangle(108, 212, 91, 26));
jButton1.setBounds(new Rectangle(250, 95, 90, 25));
jButton1.setFont(new java.awt.Font("Dialog", 0, 15));
jButton1.setToolTipText("");
jButton1.setText("修改");
jButton1.addActionListener(new Frame1_jButton1_actionAdapter(this));
jButton2.setBounds(new Rectangle(250, 130, 90, 25));
jButton2.setFont(new java.awt.Font("Dialog", 0, 15));
jButton2.setToolTipText("");
jButton2.setVerifyInputWhenFocusTarget(true);
jButton2.setText("添加");
jButton2.addActionListener(new Frame1_jButton2_actionAdapter(this));
jButton3.setBounds(new Rectangle(250, 200, 90, 25));
jButton3.setFont(new java.awt.Font("Monospaced", 0, 15));
jButton3.setToolTipText("");
jButton3.setText("刪除");
jButton3.addActionListener(new Frame1_jButton3_actionAdapter(this));
jButton4.setBounds(new Rectangle(250, 235, 90, 25));
jButton4.setFont(new java.awt.Font("Dialog", 0, 15));
jButton4.setToolTipText("");
jButton4.setText("重置");
jButton4.addActionListener(new Frame1_jButton4_actionAdapter(this));
jButton5.setBounds(new Rectangle(250, 165, 90, 25));
jButton5.setFont(new java.awt.Font("Monospaced", 0, 15));
jButton5.setToolTipText("");
jButton5.setText("查詢");
jButton5.addActionListener(new Frame1_jButton5_actionAdapter(this));
jButton6.setBounds(new Rectangle(250, 270, 120, 25));
jButton6.setFont(new java.awt.Font("Monospaced", 0, 15));
jButton6.setToolTipText("");
jButton6.setText("生成XML");
jButton6.addActionListener(new Frame1_jButton6_actionAdapter(this));
jButton7.setBounds(new Rectangle(250, 305, 120, 25));
jButton7.setFont(new java.awt.Font("Monospaced", 0, 15));
jButton7.setToolTipText("");
jButton7.setText("google一下");
jButton7.addActionListener(new Frame1_jButton7_actionAdapter(this));
jMenu1.setActionCommand("文件");
jMenu1.setText("文件");
jMenuhelp.setAction(null);
jMenuhelp.setActionCommand("幫助");
jMenuhelp.setText("幫助");
jMenuabout.setPreferredSize(new Dimension(55, 21));
jMenuabout.setToolTipText("");
jMenuabout.setActionCommand("關于");
jMenuabout.setSelected(false);
jMenuabout.setText("關于");
jMenuexit.setActionCommand("退出");
jMenuexit.setText("退出");
jTextPane1.setBackground(SystemColor.control);
jTextPane1.setFont(new java.awt.Font("Dialog", 0, 14));
jTextPane1.setBorder(BorderFactory.createLoweredBevelBorder());
jTextPane1.setEditable(false);
jTextPane1.setText("");
jTextPane1.setBounds(new Rectangle(40, 1, 380, 86));
JScrollPane sp = new JScrollPane(jTextPane1);
sp.setBounds(new Rectangle(40, 1, 380, 86));
contentPane.add(sp, null);
contentPane.add(jTextField4, null);
contentPane.add(jTextField3, null);
contentPane.add(jTextField2, null);
contentPane.add(jTextField1, null);
contentPane.add(jLabel4, null);
contentPane.add(jLabel3, null);
contentPane.add(jLabel2, null);
contentPane.add(jLabel1, null);
contentPane.add(jButton7, null);
contentPane.add(jButton6, null);
contentPane.add(jButton5, null);
contentPane.add(jButton4, null);
contentPane.add(jButton3, null);
contentPane.add(jButton2, null);
contentPane.add(jButton1, null);
jMenuBar1.add(jMenu1);
jMenu1.addSeparator();
jMenu1.add(jMenuexit);
jMenuBar1.add(jMenuhelp);
jMenuhelp.add(jMenuabout);
this.setJMenuBar(jMenuBar1);
}
// File | Exit action performed
public void jMenuexit_ActionPerformed(ActionEvent e) {
System.exit(0);
}
// Help | About action performed
public void jMenuabout_ActionPerformed(ActionEvent e) {
Frame1_AboutBox dlg = new Frame1_AboutBox(this);
Dimension dlgSize = dlg.getPreferredSize();
Dimension frmSize = getSize();
Point loc = getLocation();
dlg.setLocation(132 + loc.x, 122 + loc.y);
dlg.setModal(true);
dlg.pack();
dlg.show();
}
// Overridden so we can exit when window is closed
protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);
}
}
class Frame1_jMenuabout_ActionAdapter implements ActionListener {
Frame1 adaptee;
Frame1_jMenuabout_ActionAdapter(Frame1 adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jMenuabout_ActionPerformed(e);
}
}
// 處理修改按鈕的ActionEvent
void jButton1_actionPerformed(ActionEvent e) {
try {
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
connection = DriverManager.getConnection(
"jdbc:mysql://127.0.0.1:3306/studentINFO", "root",
"551061123");
// 創建Statement接口對象
statement = connection.createStatement();
if (jTextField1.getText().length() == 0) {
jTextPane1.setText("不能修改,請先輸入學號!");
return;
} else {
boolean same = true;
String id = jTextField1.getText();
String name = "", major = "", cla = "";
rSet = statement
.executeQuery("select * from table1 where id = '" + id
+ "'");
if (rSet.next() == false) {
jTextPane1.setText("沒有這個學號!請確信后重新輸入");
return;
}
System.out.println(jTextField2.getText().length());
if (jTextField2.getText().length() != 0) {
name = jTextField2.getText();
if (!(name.equals(rSet.getString("name")))) {
same = false;
}
} else
name = rSet.getString("name");
System.out.println(jTextField3.getText().length());
if (jTextField3.getText().length() != 0) {
major = jTextField3.getText();
if (!(major.equals(rSet.getString("major")))) {
same = false;
}
} else
major = rSet.getString("major");
System.out.println(jTextField4.getText().length());
if (jTextField4.getText().length() != 0) {
cla = jTextField4.getText();
if (!(cla.equals(rSet.getString("class")))) {
same = false;
}
} else
cla = rSet.getString("class");
if (jTextField2.getText().length() == 0
& jTextField3.getText().length() == 0
& jTextField4.getText().length() == 0) {
jTextPane1.setText("請輸入修改信息!");
return;
} else {
if (same) {
jTextPane1.setText("這是條相同的記錄,請確認您的修改信息!");
return;
} else {
System.out.println(id + "\n" + name + "\n" + major
+ "\n" + cla);
statement.executeUpdate("update table1 set name='"
+ name + "', major='" + major + "',class='"
+ cla + "' where id='" + id + "'");
jTextPane1.setText("記錄修改成功!");
return;
}
}
}
} catch (SQLException ex) {
jTextPane1.setText(ex.getMessage());
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 (rSet != null) {
rSet.close();
}
if (statement != null) {
statement.close();
}
if (connection != null) {
connection.close();
}
} 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());
}
}
}
// 處理添加按鈕ActionEvent
void jButton2_actionPerformed(ActionEvent e) {
try {
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
connection = DriverManager.getConnection(
"jdbc:mysql://127.0.0.1:3306/studentINFO", "root",
"551061123");
// 創建Statement接口對象
statement = connection.createStatement();
String sql1 = "insert into table1 values ('"
+ jTextField1.getText() + "','" + jTextField2.getText()
+ "','" + jTextField3.getText() + "','"
+ jTextField4.getText() + "')";
if (jTextField1.getText().length() == 0) {
jTextPane1.setText("不能添加,請先輸入學號!");
// 清空信息框
jTextField1.setText("");
jTextField2.setText("");
jTextField3.setText("");
jTextField4.setText("");
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -