2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩57頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、<p>  《C/S項目實訓》課程設計報告</p><p>  年 月 日</p><p><b>  摘 要</b></p><p>  本ATM系統(tǒng)的目的就是建立一個客戶平臺,用戶使用此平臺除了可以進行查詢余額、存款、取款、轉(zhuǎn)賬、修改密碼等基本業(yè)務辦理,還可以進行查詢明細,定期存款等ATM取款系統(tǒng)的針對的用戶群是使用此軟

2、件系統(tǒng)的用戶,用戶做為系統(tǒng)的服務群體,可以使用數(shù)據(jù)庫已有的賬號與密碼,登陸ATM系統(tǒng)。當用戶成功登陸后就可以根據(jù)用戶的需求進行各項業(yè)務的辦理,辦理完所有的手續(xù)后,用戶的輸入的新資料以及辦理的業(yè)務處理后的信息都會反饋到數(shù)據(jù)庫并且都會存入到數(shù)據(jù)庫中。這樣用戶就完成了辦理業(yè)務。 </p><p>  關鍵詞: ATM 數(shù)據(jù)庫 客戶端 服務器端</p><p><b

3、>  目錄</b></p><p><b>  第一章 引言1</b></p><p>  選題背景及意義 1</p><p>  第二章 系統(tǒng)分析2</p><p><b>  2.1需求分析2</b></p><p>  2.1.1

4、總體需求2</p><p>  2.1.2 具體事務 2</p><p><b>  2.2功能分析2</b></p><p><b>  2.3主要難點3</b></p><p>  2.4開發(fā)工具與環(huán)境3</p><p>  2.4.1開發(fā)工

5、具3</p><p>  2.4.2開發(fā)環(huán)境3</p><p>  第三章 概要設計4</p><p><b>  3.1設計思想4</b></p><p>  3.2數(shù)據(jù)庫設計4</p><p>  3.2.1管理員表4</p><p>  3.2.2用戶表

6、5</p><p>  3.2.3用戶信息表5</p><p>  3.2.4定期存款表5</p><p>  第四章 詳細設計6</p><p>  4.1總設計流圖6</p><p><b>  4.2登錄設計6</b></p><p>  4.3開戶設計

7、11</p><p>  4.4主界面設計14</p><p>  4.5存款設計16</p><p>  4.6取款設計19</p><p>  4.7轉(zhuǎn)賬設計23</p><p>  4.8解除掛失密碼26</p><p>  4.9銷戶設計29</p><

8、p>  4.10查詢余額30</p><p>  4.11查詢交易明細33</p><p>  4.12修改密碼36</p><p>  4.13掛失設計38</p><p>  4.14服務器端設計40</p><p>  第五章 總結43</p><p>  參 考 文

9、獻44</p><p><b>  附錄45</b></p><p>  附錄1 文件清單45</p><p>  附錄2 用戶使用說明45</p><p><b>  第一章 引言</b></p><p><b>  選題背景及意義 <

10、;/b></p><p>  隨著信息時代科技的飛速發(fā)展,使用ATM取款機、計算機等技術的發(fā)展,不僅提高了工作效率,而且大大的提高了其安全性。對于一些復雜的信息,就能夠充分的發(fā)揮它們的優(yōu)越性。本系統(tǒng)就是為了更方便人們的生活而設計的。 </p><p>  ATM系統(tǒng)作為一款數(shù)據(jù)傳輸?shù)募夹g,用戶信息和資金信息的繁雜,包含很多的數(shù)據(jù)的管理,以前的都是由一些柜員進行操作,而且手續(xù)

11、很多。對于ATM取款系統(tǒng)數(shù)據(jù)的統(tǒng)計和核實等都是采用卡號進行核對的,對于用戶的信息資料、以及等用人工辦理。數(shù)據(jù)信息處理工作量大,繁瑣。數(shù)據(jù)處理手工操作,工作量大,工作時需實時認真辦理,一但出現(xiàn)錯誤將帶來很大的損失。由于信息一定要準確真實,認真的進行各項核對工作,工作人員和管理員也只是當時對它比較清楚,時間一長,如再要進行查詢,就得在眾多的資料中翻閱、查找了,造成查詢費時、費力。 </p><p>  針對

12、這一系列問題,我們設計了這一個系統(tǒng),使得用戶可以安全的進行操作,可以便捷、快速的進行取款、存款、修改密碼、查詢余額、查詢交易明細、掛失、開戶以及完成一些商業(yè)上的交易,如轉(zhuǎn)賬,大大地提高了辦公效率,能夠及時、準確、有效的幫用戶辦理各種繁瑣的手續(xù)。</p><p><b>  第二章 系統(tǒng)分析</b></p><p><b>  2.1需求分析</b&g

13、t;</p><p><b>  2.1.1總體需求</b></p><p>  開發(fā)一款系統(tǒng)軟件,此軟件運行于銀行的ATM機器上,可以供用戶使用,完成用戶的經(jīng)濟交易,使得用戶不需要專門到銀行去辦理業(yè)務,只需要到相關銀行的ATM機器上操作即可。銀行可以節(jié)約人力資源,不需要為每個客戶人工服務。 </p><p>  2.1.2 

14、;具體事務 </p><p>  用戶:用戶存錢,用戶取錢,用戶轉(zhuǎn)賬,用戶查詢賬戶信息,用戶修改個人設置,用戶查看個人交易記錄。 </p><p>  ATM機器:與用戶交互界面,幫助提示信息,用戶需要操作實現(xiàn),用戶操作紀錄記錄,與數(shù)據(jù)庫實時同步。</p><p><b>  2.2功能分析</b></p>&

15、lt;p>  實現(xiàn)ATM的基本功能,包括:查詢余額、取款、存款、改密碼、轉(zhuǎn)賬 等基本功能 ;查詢余額:連接數(shù)據(jù)庫,根據(jù)正確的用戶名與密碼登陸查詢對應的余額; 取款、存款: 存款與取款的金額必需為100的整數(shù)倍,且每次操作不大于3000元,成功修改后,更新對應數(shù)據(jù)庫的內(nèi)容;修改密碼:只有舊密碼正確,新密碼符合要求,且兩次輸入相同的情況下才可以成功修改密碼;轉(zhuǎn)賬:每次轉(zhuǎn)賬的金額必需小于余額,只有輸入的轉(zhuǎn)賬賬號兩次都相同的情況下,才可以

16、成功轉(zhuǎn)賬; 用數(shù)據(jù)庫(或文件)保存當前用戶的用戶卡號、密碼、姓名、余額</p><p><b>  2.3主要難點</b></p><p>  ATM取款系統(tǒng)是面向特定對象群是在此軟件系統(tǒng)開戶辦理的用戶,所以用戶進入開戶辦理時的資料都需要嚴格核查,用戶登陸系統(tǒng)后,應該能根據(jù)自己的需要進行各項業(yè)務的辦理。 </p><p> 

17、 鑒于軟件系統(tǒng)使用環(huán)境一般在網(wǎng)絡上或銀行門口裝置機械,為了考慮到軟件的安全性,對于每個用戶來說,系統(tǒng)的安全性直接影響著自身的利益,同時也有可能也使用此軟件的銀行帶來很的損失。特別是網(wǎng)絡環(huán)境,到處伴隨著危險,ATM取款系統(tǒng)針對這一用戶群,采取一些有效的措施,登陸后用戶辦理完的業(yè)務信息反饋到客戶端數(shù)據(jù)庫里,做好防止信息被攔截工作。</p><p>  2.4開發(fā)工具與環(huán)境</p><p>  

18、2.4.1開發(fā)工具 </p><p>  ? 開發(fā)語言:Java、SQL</p><p>  ? 數(shù)據(jù)庫:MySql5.5</p><p>  ? 操作系統(tǒng):Windows 8.0</p><p>  2.4.2開發(fā)環(huán)境 </p><p>  ? 硬件方面: 個人計算機 </p><p>

19、  ? 軟件方面: Myeclipse7.0</p><p><b>  第三章 概要設計</b></p><p>  3.1設計思想 </p><p>  本ATM系統(tǒng)需要滿足用戶的需求,即可以進行各項業(yè)務的辦理。用戶可以根 據(jù)數(shù)據(jù)庫中正確的卡號和密碼登錄到系統(tǒng),登錄成功后可進行操作,所有的數(shù)據(jù)都要從數(shù)據(jù)庫中獲取,當數(shù)據(jù)被

20、修改后,則必須改變數(shù)據(jù)庫中,相應賬號中的數(shù)據(jù),如存款后,則要更新相應賬號中的余額;而修改密碼后,則要更新相應賬號中的密碼信息,原來的密碼就不能使用</p><p>  3.2數(shù)據(jù)庫設計 </p><p>  數(shù)據(jù)庫選擇了Access2003的數(shù)據(jù)庫作為后臺,創(chuàng)建了客戶的信息表,然后通過配置ODBC數(shù)據(jù)源,加載JDBC驅(qū)動程序,引用java.sql包來創(chuàng)建數(shù)據(jù)庫連接,然后在程序中執(zhí)行SQL

21、語句來對數(shù)據(jù)進行讀取和修改。</p><p><b>  數(shù)據(jù)庫表如下圖:</b></p><p><b>  3.2.1管理員表</b></p><p><b>  3.2.2用戶表</b></p><p>  3.2.3用戶信息表</p><p> 

22、 3.2.4定期存款表</p><p>  3.3功能模塊劃分 </p><p>  本系統(tǒng)可以劃分為如下功能模塊:登錄、開戶、銷戶、掛失、解掛、修改密碼、查詢、取款、存款、轉(zhuǎn)賬等模塊。    </p><p><b>  第四章詳細設計</b></p><p><

23、b>  4.1總設計流圖</b></p><p><b>  4.2登錄設計</b></p><p><b> ?。?)實現(xiàn)效果:</b></p><p> ?。?)關鍵代碼如下:</p><p>  public void actionPerformed(ActionEvent

24、e) {</p><p>  // TODO Auto-generated method stub</p><p>  if(e.getSource()==btOk){</p><p><b>  //提取賬號和密碼</b></p><p>  String account=tfAccount.getText();<

25、;/p><p>  String pwd=new String(pfPwd.getPassword());</p><p><b>  //發(fā)送連接請求</b></p><p><b>  Socket s;</b></p><p><b>  try {</b></p>

26、;<p>  s = new Socket(InetAddress.getByName("127.0.0.1"),8090);</p><p>  InputStream ips=s.getInputStream();</p><p>  OutputStream ops=s.getOutputStream();</p><p> 

27、 BufferedReader br=new BufferedReader(new InputStreamReader(ips));</p><p>  PrintWriter pw=new PrintWriter(ops);</p><p><b>  //發(fā)送消息頭</b></p><p>  pw.write("Login\r\

28、n");</p><p>  pw.flush();</p><p><b>  //發(fā)送賬號密碼</b></p><p>  pw.write(account+"\r\n");</p><p>  pw.write(pwd+"\r\n");</p><

29、;p>  pw.flush();</p><p><b>  //接收服務器響應</b></p><p>  String echo=br.readLine();</p><p>  if(echo.equals("1")){//賬號有誤</p><p>  JOptionPane.showMe

30、ssageDialog(Login.this,"賬號有誤!");</p><p>  tfAccount.setText("");</p><p>  pfPwd.setText("");</p><p><b>  }</b></p><p>  if(ech

31、o.equals("2")){//賬號和密碼都正確</p><p>  //接收卡的基本信息,并且創(chuàng)建一個card類</p><p>  float money=Float.parseFloat(br.readLine());</p><p>  boolean bool=Boolean.parseBoolean(br.readLine());&

32、lt;/p><p>  String name=br.readLine();</p><p>  String sex=br.readLine();</p><p>  int age=Integer.parseInt(br.readLine());</p><p>  String id=br.readLine();</p>&l

33、t;p>  String phone=br.readLine();</p><p>  //并且創(chuàng)建一個card類</p><p>  currCard=new Card(account,name,sex,age,id,pwd,phone,money,bool);</p><p>  //接收判斷卡號是不是可以用的bool變量</p><p

34、>  String str=br.readLine();</p><p>  if(str.equals("ok")){//用戶處于正常狀態(tài)</p><p>  new Basic(br,pw,currCard).init();</p><p>  Login.this.dispose();</p><p>  }e

35、lse if(str.equals("error")){//密碼錯誤三次</p><p>  int i=JOptionPane.showConfirmDialog(null, "該賬戶已被凍結,是否解凍?","提示!",</p><p>  JOptionPane.YES_NO_OPTION);</p><p

36、>  if(i==JOptionPane.OK_OPTION){</p><p>  new JieGua(br,pw,currCard).init();</p><p>  Login.this.dispose();</p><p><b>  }else{</b></p><p>  tfAccount.set

37、Text("");</p><p>  pfPwd.setText("");</p><p><b>  }</b></p><p><b>  }</b></p><p>  }else if(echo.equals("3")){//密碼

38、錯誤</p><p>  JOptionPane.showMessageDialog(Login.this,"您輸入的密碼有誤!");</p><p>  tfAccount.setText("");</p><p>  pfPwd.setText("");</p><p>  }e

39、lse if(echo.equals("4")){//密碼錯誤三次</p><p>  JOptionPane.showMessageDialog(Login.this,"您輸入的密碼已錯誤3次,即將吞卡!");</p><p>  System.exit(0);</p><p><b>  }</b>&

40、lt;/p><p>  }catch(IOException e1){</p><p>  e1.printStackTrace();</p><p><b>  }</b></p><p>  }else if(e.getSource()==btCancel){</p><p>  tfAccoun

41、t.setText("");</p><p>  pfPwd.setText("");</p><p>  }else if(e.getSource()==a){</p><p>  //new togerther().init();</p><p>  this.dispose();</p&g

42、t;<p>  }else if(e.getSource()==adduser){</p><p><b>  Socket s;</b></p><p><b>  try {</b></p><p>  s = new Socket(InetAddress.getByName("127.0.0.

43、1"),8090);</p><p>  InputStream ips=s.getInputStream();</p><p>  OutputStream ops=s.getOutputStream();</p><p>  BufferedReader br=new BufferedReader(new InputStreamReader(ips))

44、;</p><p>  PrintWriter pw=new PrintWriter(ops);</p><p>  new AddUser(br,pw).init();</p><p>  this.setVisible(false);</p><p>  } catch (UnknownHostException e1) {</p&

45、gt;<p>  // TODO Auto-generated catch block</p><p>  e1.printStackTrace();</p><p>  } catch (IOException e1) {</p><p>  // TODO Auto-generated catch block</p><p>

46、;  e1.printStackTrace();}</p><p><b>  }</b></p><p><b>  4.3開戶設計</b></p><p><b> ?。?)實現(xiàn)效果:</b></p><p> ?。?)關鍵代碼如下:</p><p>

47、;  public void actionPerformed(ActionEvent arg0) {</p><p>  // TODO Auto-generated method stub</p><p>  boolean flag2=true;</p><p>  String name=new String(tfname.getText());</p&

48、gt;<p>  String account=new String(tfaccount.getText());</p><p>  String onepwd=new String(pffirstpwd.getPassword());</p><p>  String twopwd=new String(pfsecondpwd.getPassword());</p&g

49、t;<p>  String idcard=new String(tfidcard.getText());</p><p>  String phone=new String (tfphone.getText());</p><p>  jb.addItemListener(new ItemListener(){</p><p><b>  

50、@Override</b></p><p>  public void itemStateChanged(ItemEvent arg0) {</p><p>  // TODO Auto-generated method stub</p><p><b>  }</b></p><p><b>  

51、});</b></p><p>  if(onepwd.equals("")&&idcard.equals("")&&name.equals("")</p><p>  &&phone.equals("")){</p><p>

52、  JOptionPane.showMessageDialog(AddUser.this, "請認真填寫個人信息!");</p><p><b>  }else{</b></p><p>  if(!onepwd.equals(twopwd)){</p><p>  JOptionPane.showMessageDialog

53、(AddUser.this, "兩次輸入的密碼不一致!");</p><p><b>  }else{</b></p><p>  JOptionPane.showMessageDialog(AddUser.this,sex);</p><p>  //new Login().init();</p><p

54、>  //AddUser.this .dispose();</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  try {</b></p>

55、<p>  pstmt=conn.prepareStatement(sql);</p><p>  pstmt.setString(1,transAccount);</p><p>  rs=pstmt.executeQuery();</p><p>  if(rs.next()){</p><p>  transCard=new

56、Card();</p><p>  transCard.setName(rs.getString("name"));</p><p>  transCard.setSex(rs.getString("sex"));</p><p>  transCard.setAge(rs.getInt("age"));&

57、lt;/p><p>  transCard.setID(rs.getString("id"));</p><p>  transCard.setPhone(rs.getString("phone")); </p><p><b>  }</b></p><p>  return tra

58、nsCard;</p><p>  } catch (SQLException e) {</p><p>  // TODO Auto-generated catch block</p><p>  e.printStackTrace();</p><p><b>  }</b></p><p>

59、<b>  4.4主界面設計</b></p><p><b>  實現(xiàn)效果: </b></p><p><b>  關鍵代碼如下:</b></p><p>  public void actionPerformed(ActionEvent e) {</p><p>  // T

60、ODO Auto-generated method stub</p><p>  if(e.getSource()==SaveM){</p><p>  new SaveM(br,pw,currCard).init();}</p><p>  if(e.getSource()==TakeM){</p><p>  new TakeM2(br,

61、pw,currCard).init();}</p><p>  if(e.getSource()==TransM){</p><p>  new TranM(br,pw,currCard).init();}</p><p>  if(e.getSource()==QueryM){</p><p>  new ChaXun(br,pw,curr

62、Card).init();}</p><p>  if(e.getSource()==a1){</p><p>  new Mima(br,pw,currCard).init();</p><p>  this.dispose();}</p><p>  if(e.getSource()==a2){</p><p> 

63、 JOptionPane.showMessageDialog(Basic.this, "請在30秒內(nèi)取走你的卡片,否則將會被吞卡");</p><p>  new Login().init();</p><p>  this.setVisible(false);</p><p><b>  }</b></p>

64、<p>  if(e.getSource()==DelUser){</p><p>  new DelUser(br,pw,currCard).init();</p><p>  this.setVisible(false);}</p><p>  if(e.getSource()==GuaShi){</p><p>  new G

65、uaShi(br,pw,currCard).init();</p><p>  this.setVisible(false);</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  4.5存款設計</b></p>

66、<p><b> ?。?)實現(xiàn)效果:</b></p><p>  (2)關鍵代碼如下:</p><p>  this.addWindowListener(new WindowAdapter(){</p><p>  public void windowClosing(WindowEvent e){</p><p

67、>  pw.write("Logoff\r\n");</p><p>  pw.flush();</p><p>  SaveM.this.dispose();</p><p><b>  }</b></p><p><b>  });</b></p><

68、;p>  Images images=new Images();</p><p>  images.AddImage(this,("image\\3.jpg"));</p><p>  for(int i=0;i<10;i++){</p><p>  btNum[i].addActionListener(new ActionListe

69、ner(){</p><p><b>  @Override</b></p><p>  public void actionPerformed(ActionEvent e) {</p><p>  // TODO Auto-generated method stub</p><p>  String str=e.get

70、ActionCommand();</p><p>  if(!isNum){</p><p>  text.setText(str);</p><p>  isNum=true;</p><p><b>  }</b></p><p><b>  else{</b></

71、p><p>  text.setText(text.getText()+str);</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  });</b></p><p><b>  }</

72、b></p><p>  btOk.addActionListener(new ActionListener(){</p><p><b>  @Override</b></p><p>  public void actionPerformed(ActionEvent e) {</p><p>  // TODO

73、 Auto-generated method stub</p><p>  //把text里的數(shù)據(jù)取出來強制轉(zhuǎn)換成int,用k來接受</p><p>  int k=Integer.parseInt(text.getText());</p><p>  if(k%100==0){</p><p>  if(k>3000){<

74、;/p><p>  JOptionPane.showMessageDialog(SaveM.this, "對不起,你一次最多只能存入3000元現(xiàn)金!");</p><p>  text.setText("");</p><p><b>  }else{</b></p><p>  pw

75、.write("save\r\n");</p><p>  pw.write(k+"\r\n");</p><p>  pw.flush();</p><p>  String str;</p><p><b>  try {</b></p><p>  s

76、tr=br.readLine();</p><p>  if(str.equals("saveSuccess")){</p><p>  //更新當前集合數(shù)據(jù)</p><p>  currCard.setMoney(currCard.getMoney()+k);</p><p>  text.setText("&

77、quot;);</p><p>  JOptionPane.showMessageDialog(SaveM.this, "存款成功!");</p><p><b>  }else{</b></p><p>  JOptionPane.showMessageDialog(SaveM.this, "存款失敗!"

78、;);</p><p><b>  }</b></p><p>  } catch (IOException e1) {</p><p>  // TODO Auto-generated catch block</p><p>  e1.printStackTrace();</p><p><

79、;b>  }</b></p><p><b>  }</b></p><p><b>  }else{</b></p><p>  JOptionPane.showMessageDialog(SaveM.this, "你輸入的金額不對!");</p><p&

80、gt;<b>  }</b></p><p><b>  }</b></p><p><b>  });</b></p><p>  btCancel.addActionListener(new ActionListener(){</p><p><b>  @Ove

81、rride</b></p><p>  public void actionPerformed(ActionEvent e) {</p><p>  // TODO Auto-generated method stub</p><p>  SaveM.this.dispose();</p><p><b>  }<

82、/b></p><p><b>  });</b></p><p><b>  4.6取款設計</b></p><p><b>  實現(xiàn)界面:</b></p><p><b>  關鍵代碼如下:</b></p><p>  p

83、ublic void actionPerformed(ActionEvent e) {</p><p>  // TODO Auto-generated method stub</p><p>  //把text里的數(shù)據(jù)取出來強制轉(zhuǎn)換成int,用k來接受</p><p>  int k=Integer.parseInt(text.getText());</p&

84、gt;<p><b>  if(k==0){</b></p><p>  JOptionPane.showMessageDialog(TakeM.this, "警告:請不要隨意操作!!");</p><p><b>  }</b></p><p>  if(currCard.getMone

85、y()>=k){</p><p>  if(k%100==0){</p><p>  if(k>3000){</p><p>  JOptionPane.showMessageDialog(TakeM.this, "對不起,你一次最多只能提取3000元現(xiàn)金!");</p><p>  text.setText(

86、"");</p><p><b>  }else{</b></p><p>  pw.write("take\r\n");</p><p>  pw.write(k+"\r\n");</p><p>  pw.flush();</p><p&

87、gt;  String str;</p><p><b>  try {</b></p><p>  str=br.readLine();</p><p>  if(str.equals("takeSuccess")){</p><p>  //更新當前集合數(shù)據(jù)</p><p>

88、;  currCard.setMoney(currCard.getMoney()-k);</p><p>  JOptionPane.showMessageDialog(TakeM.this, "恭喜你,取款成功!");</p><p>  text.setText("");</p><p><b>  }else{

89、</b></p><p>  JOptionPane.showMessageDialog(TakeM.this, "取款失?。?!");</p><p><b>  }</b></p><p>  } catch (IOException e1) {</p><p>  // TODO Au

90、to-generated catch block</p><p>  e1.printStackTrace();</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }else{</b></p><p&

91、gt;  JOptionPane.showMessageDialog(TakeM.this, "你輸入的金額不對!");</p><p><b>  }</b></p><p><b>  }else{</b></p><p>  JOptionPane.showMessageDialog(TakeM.

92、this, "你的賬戶余額不足!");</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  try {</b></p><p>  pstmt=conn.prepareStatement(sql);&l

93、t;/p><p>  pstmt.setString(1,transAccount);</p><p>  rs=pstmt.executeQuery();</p><p>  if(rs.next()){</p><p>  transCard=new Card();</p><p>  transCard.setNam

94、e(rs.getString("name"));</p><p>  transCard.setSex(rs.getString("sex"));</p><p>  transCard.setAge(rs.getInt("age"));</p><p>  transCard.setID(rs.getSt

95、ring("id"));</p><p>  transCard.setPhone(rs.getString("phone")); </p><p><b>  }</b></p><p>  return transCard;</p><p>  } catch (SQLExce

96、ption e) {</p><p>  // TODO Auto-generated catch block</p><p>  e.printStackTrace();</p><p><b>  }</b></p><p><b>  4.7轉(zhuǎn)賬設計</b></p><p&

97、gt;<b>  實現(xiàn)效果:</b></p><p><b>  關鍵代碼如下:</b></p><p>  public void actionPerformed(ActionEvent e) {</p><p>  // TODO Auto-generated method stub</p><p&

98、gt;  if(e.getSource()==btOk){</p><p>  String transAccount=b.getText();</p><p>  //只有當輸入的轉(zhuǎn)賬卡號不是自己的卡號才向服務器端發(fā)送數(shù)據(jù)</p><p>  if(!transAccount.equals(currCard.getAccount())){</p>&

99、lt;p>  pw.write("transmoney\r\n");</p><p>  pw.write(transAccount+"\r\n");</p><p>  pw.flush();</p><p><b>  try {</b></p><p>  String

100、 str=br.readLine();</p><p>  if(str.equals("1")){</p><p>  new TranM2(br,pw,currCard).init();</p><p>  TranM.this.dispose();</p><p><b>  }else{<

101、/b></p><p>  JOptionPane.showMessageDialog(TranM.this, "您輸入的卡號不正確");</p><p><b>  }</b></p><p>  } catch (IOException e1) {</p><p>  // TODO Aut

102、o-generated catch block</p><p>  e1.printStackTrace();</p><p><b>  }</b></p><p><b>  }else{</b></p><p>  JOptionPane.showMessageDialog(TranM.thi

103、s, "您輸入的卡號不正確");</p><p><b>  }</b></p><p>  }else if(e.getSource()==btCancel){</p><p>  TranM.this.dispose();</p><p><b>  }</b></p&

104、gt;<p><b>  }</b></p><p>  public void actionPerformed(ActionEvent e) {</p><p>  // TODO Auto-generated method stub</p><p>  int k=Integer.parseInt(text.getText()

105、);</p><p>  if(currCard.getMoney()>=k){</p><p>  pw.write(k+"\r\n");</p><p>  pw.flush();</p><p><b>  try {</b></p><p>  String st

106、r=br.readLine();</p><p>  if(str.equals("Success")){</p><p>  currCard.setMoney(currCard.getMoney()-k);</p><p>  JOptionPane.showMessageDialog(TranM2.this, "恭喜你,轉(zhuǎn)賬成功!

107、你當前的余額是:"+currCard.getMoney());</p><p>  TranM2.this.dispose();</p><p><b>  }else{</b></p><p>  JOptionPane.showMessageDialog(TranM2.this, "轉(zhuǎn)賬失?。?quot;);</p

108、><p><b>  }</b></p><p>  } catch (IOException e1) {</p><p>  // TODO Auto-generated catch block</p><p>  e1.printStackTrace();}</p><p><b>  

109、}else{</b></p><p>  JOptionPane.showMessageDialog(TranM2.this, "余額不足 !");</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  

110、4.8解除掛失密碼</b></p><p><b>  實現(xiàn)效果:</b></p><p><b>  關鍵代碼如下:</b></p><p>  public void actionPerformed(ActionEvent e) {</p><p>  // TODO Auto-ge

111、nerated method stub</p><p>  String pwd1=new String(b2.getPassword());</p><p>  String id1=b5.getText();</p><p>  boolean flag=true;</p><p>  if(!pwd1.equals(currCard.g

112、etPwd())){</p><p>  JOptionPane.showMessageDialog(JieGua.this,"密碼有誤!");</p><p>  b2.setText("");</p><p>  flag=false;</p><p><b>  }</b>&

113、lt;/p><p>  if(!id1.equals(currCard.getId())){</p><p>  JOptionPane.showMessageDialog(JieGua.this,"身份證號有誤!");</p><p>  b5.setText("");</p><p>  flag=fa

114、lse;</p><p><b>  }</b></p><p>  if(flag==true){</p><p>  pw.write("removeLoss\r\n");</p><p>  pw.flush();</p><p><b>  try {<

115、/b></p><p>  String string=br.readLine();</p><p>  if(string.equals("lossSuccess")){</p><p>  JOptionPane.showMessageDialog(JieGua.this, "解掛成功,請重新登錄!");</p

116、><p>  new Login().init();</p><p>  JieGua.this.dispose();</p><p><b>  }else{</b></p><p>  JOptionPane.showMessageDialog(JieGua.this, "掛失失敗!");</p

117、><p>  new Login().init();</p><p>  JieGua.this.dispose();</p><p><b>  }</b></p><p>  } catch (IOException e1) {</p><p>  // TODO Auto-generated c

118、atch block</p><p>  e1.printStackTrace();</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  4.9銷戶

119、設計</b></p><p><b>  實現(xiàn)效果:</b></p><p><b>  關鍵代碼如下:</b></p><p>  public void actionPerformed(ActionEvent arg0) {</p><p>  // TODO Auto-genera

120、ted method stub</p><p>  if(currCard.getMoney()!=0){</p><p>  JOptionPane.showMessageDialog(DelUser2.this, "你的卡上還有"+currCard.getMoney()+"元,請做處理余額!");</p><p>  ne

121、w Basic(br,pw,currCard).init();</p><p>  DelUser2.this.dispose();</p><p><b>  }else{</b></p><p>  pw.write("delUser\r\n");</p><p>  pw.flush();<

122、;/p><p><b>  try {</b></p><p>  String str=br.readLine();</p><p>  if(str.equals("Success")){</p><p>  JOptionPane.showMessageDialog(DelUser2.this, &

123、quot;銷戶成功!");</p><p>  new Login().init();</p><p>  DelUser2.this.dispose();</p><p><b>  }else{</b></p><p>  JOptionPane.showMessageDialog(DelUser2.thi

124、s, "銷戶成功!");</p><p>  DelUser2.this.dispose();</p><p><b>  }</b></p><p>  } catch (IOException e) {</p><p>  // TODO Auto-generated catch block<

125、;/p><p>  e.printStackTrace();</p><p><b>  }</b></p><p>  JOptionPane.showMessageDialog(DelUser2.this, "銷戶成功!");</p><p>  new Login().init();</p&g

126、t;<p>  DelUser2.this.dispose();</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  4.10查詢余額</b></p><p><b>  效果實現(xiàn):</b&g

127、t;</p><p><b>  關鍵代碼如下:</b></p><p>  pw.write("chaxun\r\n");</p><p>  pw.flush();</p><p><b>  int i=0;</b></p><p>  while(

128、i<5){</p><p><b>  try {</b></p><p>  String type=br.readLine();</p><p>  String time=br.readLine();</p><p>  float money=Float.parseFloat(br.readLine());

129、</p><p>  rowDate[i][0]=currCard.getAccount();</p><p>  rowDate[i][1]=currCard.getName();</p><p>  rowDate[i][2]=time;</p><p>  rowDate[i][3]=type;</p><p>

130、  rowDate[i][4]=money;</p><p><b>  i++;</b></p><p>  } catch (IOException e) {</p><p>  // TODO Auto-generated catch block</p><p>  e.printStackTrace();<

131、/p><p><b>  }try {</b></p><p>  st=conn.createStatement();</p><p><b>  //執(zhí)行SQL語句</b></p><p>  rs=st.executeQuery(sql);</p><p>  if(rs.

132、next()){</p><p>  currCard=new Card();</p><p>  currCard.setMoney(rs.getFloat("money"));</p><p>  currCard.setBool(rs.getBoolean("bool"));</p><p>  

133、currCard.setName(rs.getString("name"));</p><p>  currCard.setSex(rs.getString("sex"));</p><p>  currCard.setAge(rs.getInt("age"));</p><p>  currCard.se

134、tID(rs.getString("id"));</p><p>  currCard.setPhone(rs.getString("phone")); </p><p>  currCard.setAccount(rs.getString("account"));</p><p>  currCard.s

135、etPwd(rs.getString("pwd")); </p><p><b>  }</b></p><p>  } catch (SQLException e) {</p><p>  // TODO Auto-generated catch block</p><p>  e.printSta

136、ckTrace();</p><p><b>  }</b></p><p>  4.11查詢交易明細</p><p><b>  實現(xiàn)效果:</b></p><p><b>  關鍵代碼如下:</b></p><p>  public void ini

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論