实验四 Java数据库程序设计Word文件下载.docx
《实验四 Java数据库程序设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《实验四 Java数据库程序设计Word文件下载.docx(21页珍藏版)》请在冰豆网上搜索。
publicStringsAge;
publicdoubleChinese;
publicdoubleEnglish;
publicdoubleMath;
publicvoidConnect(){
try{
Class.forName("
org.gjt.mm.mysql.Driver"
);
Stringurl="
jdbc:
mysql:
//localhost:
3306/mysql"
connection=DriverManager.getConnection(url,DBUSER,DBPASSWORD);
statement=connection.createStatement();
Strings="
createtableIFNOTEXISTS"
+
"
Student(sIDchar(10)notnull,sNamechar(20)notnull,sAgechar(10)notnull,"
Chinesedoublenotnull,Englishdoublenotnull,Mathdoublenotnull,primarykey(sID))"
statement.execute(s);
}catch(Exceptione){
//TODO:
handleexception
}
}
publicvoidadd(StringsID,StringsName,StringsAge,doubleChinese,doubleEnglish,doubleMath){
this.Connect();
Strings="
insertintoStudent(sID,sName,sAge,Chinese,English,Math)"
"
values('
"
+sID+"
'
'
+sName+"
+sAge+"
"
+Chinese+"
+English+"
+Math+"
)"
publicvoidselectbyId(StringsID){
select*fromStudentwheresID='
resultSet=statement.executeQuery(s);
intcount=0;
while(resultSet.next()){
this.sID=resultSet.getString("
sID"
this.sName=resultSet.getString("
sName"
this.sAge=resultSet.getString("
sAge"
this.Chinese=resultSet.getDouble("
Chinese"
this.English=resultSet.getDouble("
English"
this.Math=resultSet.getDouble("
Math"
count++;
}
if(count==0){
this.sID=null;
this.sName=null;
this.sAge=null;
this.Chinese=0;
this.English=0;
this.Math=0;
publicvoidselectbyName(StringsName){
this.Chinese=-1;
this.English=-1;
this.Math=-1;
JOptionPane.showMessageDialog(null,"
查询失败,没有找到"
publicvoidupdate(StringsID,StringsName,StringsAge,doubleChinese,doubleEnglish,doubleMath){
updateStudentsetsID='
sName='
sAge='
+sAge+
Chinese="
English="
Math="
wheresID='
publicvoiddelete(StringsID){
deletefromStudentwheresID='
publicvoiddisplay(){
select*fromStudent"
}
//添加学生信息面板类
importjava.awt.Container;
importjava.awt.Toolkit;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjavax.swing.JButton;
importjavax.swing.JFrame;
importjavax.swing.JLabel;
importjavax.swing.JOptionPane;
importjavax.swing.JTextField;
publicclassAddInfo{
privateJFramejFrame=newJFrame("
请输入学生信息:
privateJLabelJLsID=newJLabel("
学号:
privateJLabelJLsName=newJLabel("
姓名:
privateJLabelJLsAge=newJLabel("
年龄:
privateJLabelJLChinese=newJLabel("
语文成绩:
privateJLabelJLEnglish=newJLabel("
英语成绩:
privateJLabelJLMath=newJLabel("
数学成绩:
privateJTextFieldJTsID=newJTextField(10);
privateJTextFieldJTsName=newJTextField(10);
privateJTextFieldJTsAge=newJTextField(10);
privateJTextFieldJTChinese=newJTextField(10);
privateJTextFieldJTEnglish=newJTextField(10);
privateJTextFieldJTMath=newJTextField(10);
privateJButtonJBIn=newJButton("
添加"
privateJButtonJBOut=newJButton("
退出"
privateContainercontainer=jFrame.getContentPane();
privateDataManagerdataManager=newDataManager();
publicAddInfo(){
container.setLayout(null);
container.add(JLsName);
container.add(JLsID);
container.add(JLsAge);
container.add(JLChinese);
container.add(JLEnglish);
container.add(JLMath);
container.add(JTsName);
container.add(JTsID);
container.add(JTsAge);
container.add(JTChinese);
container.add(JTEnglish);
container.add(JTMath);
container.add(JBIn);
container.add(JBOut);
JLsName.setBounds(30,20,50,20);
JTsName.setBounds(100,20,100,20);
JLsID.setBounds(30,50,50,20);
JTsID.setBounds(100,50,100,20);
JLsAge.setBounds(30,80,50,20);
JTsAge.setBounds(100,80,100,20);
JLChinese.setBounds(30,110,70,20);
JTChinese.setBounds(100,110,100,20);
JLEnglish.setBounds(30,140,70,20);
JTEnglish.setBounds(100,140,100,20);
JLMath.setBounds(30,170,70,20);
JTMath.setBounds(100,170,100,20);
JBIn.setBounds(50,220,60,25);
JBOut.setBounds(130,220,60,25);
Toolkittoolkit=Toolkit.getDefaultToolkit();
doublewidth=toolkit.getScreenSize().getWidth();
doubleheight=toolkit.getScreenSize().getHeight();
jFrame.setLocation((int)(width-jFrame.getWidth())*2/5,(int)(height-jFrame.getHeight())/3);
jFrame.setSize(250,300);
jFrame.setResizable(false);
jFrame.setVisible(true);
JBIn.addActionListener(newActionListener(){
@Override
publicvoidactionPerformed(ActionEventarg0){
dataManager.selectbyId(JTsID.getText());
if(dataManager.sID==null)
{
dataManager.add(JTsID.getText(),JTsName.getText(),JTsAge.getText(),
Double.parseDouble(JTChinese.getText()),Double.parseDouble(JTEnglish.getText()),Double.parseDouble(JTMath.getText()));
JOptionPane.showMessageDialog(null,"
添加成功"
}else{
该学生已经存在,请重新输入"
}
});
JBOut.addActionListener(newActionListener(){
jFrame.dispose();
//删除学生信息面板类
publicclassDeleteInfo{
删除学生信息:
privateJLabelJLDelete=newJLabel("
输入学号:
privateJTextFieldJTDelete=newJTextField(10);
privateJButtonJBDelete=newJButton("
删除"
publicDeleteInfo(){
container.add(JLDelete);
container.add(JTDelete);
container.add(JBDelete);
JLDelete.setBounds(80,30,70,20);
JTDelete.setBounds(150,30,100,20);
JBDelete.setBounds(270,26,60,25);
JBOut.setBounds(270,60,60,25);
jFrame.setSize(420,150);
JBDelete.addActionListener(newActionListener(){
//TODOAuto-generatedmethodstub
dataManager.selectbyId(JTDelete.getText());
不存在该学生信息,删除失败"
else{
dataManager.delete(JTDelete.getText());
删除成功"
//查找学生信息面板类
importjava.awt.*;
importjava.awt.event.*;
publicclassSelectInfo{
查询学生信息:
privateJLabelJLSelect=newJLabel("
privateJTextFieldJTSelect=newJTextField(10);
privateJButtonJBSelect=newJButton("
查询"
publicSelectInfo(){
container.add(JLSelect);
co