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

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、<p><b>  課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告</b></p><p>  一、應(yīng)用技術(shù)及開發(fā)環(huán)境</p><p>  1.JAVA語言及JDK</p><p>  JDK(Java Development Kit)是Sun Microsystems針對(duì)Java開發(fā)員的產(chǎn)品。自從Java推出以來,JDK已經(jīng)成為使用最廣泛的Java SDK。JD

2、K 是整個(gè)Java的核心,包括了Java運(yùn)行環(huán)境、Java工具和Java基礎(chǔ)類庫。JDK是學(xué)好Java的第一步。而專門運(yùn)行在x86平臺(tái)的Jrocket在服務(wù)端運(yùn)行效率也要比Sun JDK好很多。從SUN的JDK5.0開始,提供了泛型等非常實(shí)用的功能,其版本也不斷更新,運(yùn)行效率得到了非常大的提高。</p><p><b>  2.eclipse</b></p><p>

3、  Eclipse 是一個(gè)開放源代碼的、基于Java的可擴(kuò)展開發(fā)平臺(tái)。就其本身而言,它只是一個(gè)框架和一組服務(wù),用于通過插件組件構(gòu)建開發(fā)環(huán)境。幸運(yùn)的是,Eclipse 附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括Java開發(fā)工具(Java Development Kit,JDK)。</p><p>  二、結(jié)構(gòu)設(shè)計(jì)與結(jié)構(gòu)功能圖</p><p><b>  1. 結(jié)構(gòu)設(shè)計(jì)</b><

4、/p><p>  根據(jù)對(duì)系統(tǒng)進(jìn)行需求分析,本系統(tǒng)將分為4個(gè)模塊:</p><p>  ● 會(huì)員基本信息管理</p><p>  管理會(huì)員基本信息,包括個(gè)人信息的添加、修改、刪除以及查詢。</p><p>  ● 會(huì)員消費(fèi)信息管理</p><p>  管理會(huì)員的消費(fèi)信息,包括消費(fèi)記錄的添加、修改、刪除以及查詢。</p&

5、gt;<p>  ● 會(huì)員積分信息管理</p><p>  管理會(huì)員積分信息,包括會(huì)員積分的添加、修改、刪除以及查詢。。</p><p><b>  2. 功能結(jié)構(gòu)圖</b></p><p>  會(huì)員信息管理系統(tǒng)功能結(jié)構(gòu)如圖2.1所示。</p><p><b>  三、系統(tǒng)實(shí)現(xiàn)</b>

6、</p><p>  該系統(tǒng)由4個(gè)模塊構(gòu)成,包括會(huì)員信息管理系統(tǒng)主界面模塊、會(huì)員基本信息管理模塊、會(huì)員消費(fèi)信息管理模塊和會(huì)員積分信息管理模塊。下面分別加以敘述:</p><p> ?、?會(huì)員信息管理系統(tǒng)主界面模塊</p><p>  圖3.1 會(huì)員信息管理系統(tǒng)主界面</p><p> ?、?會(huì)員基本信息管理模塊</p><

7、;p>  圖3.2 會(huì)員基本信息管理模塊的運(yùn)行界面</p><p> ?、?會(huì)員消費(fèi)信息管理模塊</p><p>  圖3.3 會(huì)員消費(fèi)信息管理模塊運(yùn)行界面</p><p>  ④ 會(huì)員積分信息管理模塊</p><p>  圖3.4 會(huì)員積分信息管理模塊的運(yùn)行界面</p><p>  四、 系統(tǒng)調(diào)試與測試<

8、/p><p>  4.1測試的定義及目的</p><p>  軟件測試就是在軟件投入運(yùn)行之前,對(duì)軟件需求分析、設(shè)計(jì)規(guī)格說明和編碼的最終復(fù)審,是保證軟件質(zhì)量的關(guān)鍵步驟。如果要給軟件測試下定義,可以這樣講,軟件測試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過程。</p><p>  測試的目的在于將軟件設(shè)計(jì)時(shí)設(shè)計(jì)者與程序開發(fā)者之間理解不一致的地方、功能與需求不一致的地方、不符合邏輯思維的情

9、況都反映給質(zhì)量控制部門,由質(zhì)量控制部門調(diào)配需求部門統(tǒng)一做出一個(gè)明確解答,再由開發(fā)人員進(jìn)行修改和補(bǔ)充。</p><p><b>  4.2系統(tǒng)功能測試</b></p><p>  功能測試主要是測試程序模塊是否實(shí)現(xiàn)了設(shè)計(jì)中所要求的功能。功能測試中需要注意的有:</p><p>  (1)查詢功能中,是按會(huì)員號(hào)進(jìn)行查詢的。每次查詢前需要先輸入會(huì)員號(hào)

10、,如果沒有,程序運(yùn)行時(shí)會(huì)彈出提示信息窗口,告訴用戶輸入會(huì)員信息。</p><p>  (2)錄入功能中,需要注意的是前臺(tái)設(shè)置的數(shù)值長度是否大于后臺(tái)數(shù)值長度,以及前臺(tái)和后臺(tái)的數(shù)據(jù)結(jié)構(gòu)是否相符,很多時(shí)候錄入功能無法實(shí)現(xiàn)是由于這些原因。還有就是必須錄入的字段的設(shè)置時(shí)候有誤。</p><p>  (3)測試刪除功能中需要注意的是單擊"刪除"按鈕后,一般會(huì)出現(xiàn)提示信息,詢問是否確

11、定刪除。通常情況下,我們單擊"確認(rèn)"按鈕查看信息是否被刪除掉了,而忽略了單擊"取消"按鈕后程序的反應(yīng):這時(shí)有可能的是沒有刪除,還有一種可能是即便單擊了"取消"按鈕,也一樣刪除了數(shù)據(jù)。</p><p>  (4)關(guān)于修改功能的測試主要是看修改確認(rèn)后是否數(shù)據(jù)真正已被修改了。這是最基本的功能,需要注意的是看是否能把不應(yīng)該修改的數(shù)據(jù)也修改成功了。 </p&

12、gt;<p>  4.3系統(tǒng)調(diào)試常見錯(cuò)誤</p><p>  1.NullPointerException異常</p><p>  一般是對(duì)一個(gè)為NULL值的變量進(jìn)行操作引起的。為避免這種異常,最好在對(duì)變量操作之前檢查,看它是否為NULL值。</p><p>  2.NumberFormatException異常</p><p>

13、;  這是由于數(shù)字的格式錯(cuò)誤而出現(xiàn)的例外。為了避免出現(xiàn)此類錯(cuò)誤,一般必須保證數(shù)據(jù)格式輸入正確。</p><p><b>  結(jié)束語</b></p><p>  經(jīng)過這次課題的設(shè)計(jì)并實(shí)現(xiàn),盡管會(huì)遇到很多難題,但是讓我更加受益的是在這次課題中得到的經(jīng)驗(yàn)、心得和鍛煉。我發(fā)現(xiàn)開發(fā)項(xiàng)目的過程其實(shí)就是個(gè)不斷的解決問題的過程,從中也感覺到項(xiàng)目開發(fā)的快樂,一個(gè)人永遠(yuǎn)有學(xué)不完的知識(shí),就

14、算是項(xiàng)目開發(fā)中的知識(shí)點(diǎn)都學(xué)了,但在實(shí)際的開發(fā)過程中仍然會(huì)遇到不少問題,遇到問題時(shí)要做到兩點(diǎn):一個(gè)是“查”</p><p>  ,一個(gè)是“問”。不懂的地方就得要自己找答案,可以從書本、網(wǎng)絡(luò)中查找解決的答案;再一個(gè)就是問周邊的同學(xué)。比如,在本科課題的編寫代碼部分,本人就參考了《java 核心技術(shù)》,從中得到了圖形編程的很多有用的方法。這次課程的設(shè)計(jì)給我以前所學(xué)的知識(shí)做了一個(gè)總結(jié),為我深入學(xué)習(xí)編程做了鋪墊。在本課題中存

15、在的不足之處是在所難免的,本人將在日后加于改進(jìn)。</p><p><b>  致 謝</b></p><p>  在本課題的設(shè)計(jì)和實(shí)現(xiàn)的過程中遇到的不少的難題,我要感謝那些給我?guī)韼椭臅蚷nternet,還有周邊的同學(xué)們。如果沒有他們的幫助,本課題的設(shè)計(jì)和實(shí)現(xiàn)就不會(huì)如期順利完成。還要感謝我們的指導(dǎo)老師給我們這么多學(xué)生的文檔認(rèn)真批改,讓我們知道在課程設(shè)計(jì)與實(shí)現(xiàn)

16、的過程中存在的問題。</p><p><b>  附錄:程序源代碼</b></p><p> ?。?)Menu.java(主窗口)</p><p>  package CRM;</p><p>  import java.awt.*;</p><p>  import java.awt.event

17、.*;</p><p>  import java.io.*;</p><p>  import java.util.*;</p><p>  import javax.swing.*;</p><p>  import javax.swing.border.*;</p><p>  import java.util.

18、*;</p><p>  class Menu extends JFrame implements ActionListener {</p><p>  JButton CustomerManager = new JButton("會(huì)員信息");</p><p>  JButton ConsumptionManager = new JButton

19、("消費(fèi)信息");</p><p>  JButton Score = new JButton("會(huì)員積分信息");</p><p>  JMenuBar mb = new JMenuBar();// 菜單欄</p><p>  JPanel jp = new JPanel();// 用來填放子模塊</p>&l

20、t;p>  Container cp = getContentPane();</p><p>  String username;</p><p><b>  Menu() {</b></p><p><b>  }</b></p><p>  Menu(String username) {&

21、lt;/p><p>  this.username = username;</p><p>  mb.add(CustomerManager);</p><p>  mb.add(ConsumptionManager);</p><p>  mb.add(Score);</p><p>  cp.add(mb, "

22、;North");</p><p><b>  // 設(shè)置邊框</b></p><p>  jp.setBorder(BorderFactory.createTitledBorder(</p><p>  BorderFactory.createLineBorder(Color.blue, 2), null,</p>&

23、lt;p>  TitledBorder.CENTER, TitledBorder.TOP));</p><p>  jp.setLayout(new BorderLayout());</p><p>  JLabel label1 = new JLabel(new ImageIcon("4.jpg"));</p><p>  jp.add(

24、label1);</p><p>  JLabel label2 = new JLabel(new ImageIcon("2.jpg"));</p><p>  jp.add(label2, "South");</p><p>  JScrollPane scrollpane = new JScrollPane(jp);<

25、;/p><p>  cp.add(scrollpane);</p><p>  Toolkit kit = Toolkit.getDefaultToolkit();</p><p>  Dimension screen = kit.getScreenSize();</p><p>  int x = screen.width; /* 取得顯示器窗

26、口的寬度 */</p><p>  int y = screen.height; /* 取得顯示器窗口的高度 */</p><p>  setSize(600, 600);</p><p>  int xcenter = (x - 600) / 2;</p><p>  int ycenter = (y - 600) / 2;</p&g

27、t;<p>  setLocation(xcenter, ycenter);/* 顯示在窗口中央 */</p><p>  setVisible(true);</p><p>  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);</p><p><b>  // 注冊臨聽器</b>&l

28、t;/p><p>  CustomerManager.addActionListener(this);</p><p>  ConsumptionManager.addActionListener(this);</p><p>  Score.addActionListener(this);</p><p><b>  }</b&

29、gt;</p><p>  public void actionPerformed(ActionEvent e) {</p><p>  String cmd = e.getActionCommand();</p><p>  if (cmd.equals("會(huì)員信息")) {</p><p>  new Customer

30、Manager();</p><p><b>  }</b></p><p>  if (cmd.equals("消費(fèi)信息")) {</p><p>  new ConsumptionManager();</p><p><b>  }</b></p><p&

31、gt;  if (cmd.equals("會(huì)員積分信息")) {</p><p>  new Score();</p><p><b>  }</b></p><p><b>  }</b></p><p>  public static void main(String[] a

32、rgs) {</p><p>  new Menu("");</p><p><b>  }</b></p><p><b>  }</b></p><p>  (2)Score.java (會(huì)員積分管理界面)</p><p>  package CRM;

33、</p><p>  import java.awt.*;</p><p>  import java.awt.event.*;</p><p>  import javax.swing.*;</p><p>  import java.io.*;</p><p>  import java.util.*;</p

34、><p>  class Customer1 implements java.io.Serializable {</p><p><b>  /**</b></p><p><b>  * </b></p><p><b>  */</b></p><p>

35、  private static final long serialVersionUID = 1L;</p><p>  String number, name, lastmonth, thismonth, sex, total;</p><p>  public Customer1() {</p><p><b>  };</b></p

36、><p>  public void setNumber(String number) {</p><p>  this.number = number;</p><p><b>  }</b></p><p>  public String getNumber() {</p><p>  retur

37、n number;</p><p><b>  }</b></p><p>  public void setName(String name) {</p><p>  this.name = name;</p><p><b>  }</b></p><p>  publi

38、c String getName() {</p><p>  return name;</p><p><b>  }</b></p><p>  public void setlastmonth(String lastmonth) {</p><p>  this.lastmonth = lastmonth;</

39、p><p><b>  }</b></p><p>  public String getlastmonth() {</p><p>  return lastmonth;</p><p><b>  }</b></p><p>  public void setthismont

40、h(String thismonth) {</p><p>  this.thismonth = thismonth;</p><p><b>  }</b></p><p>  public String getthismonth() {</p><p>  return thismonth;</p>&

41、lt;p><b>  }</b></p><p>  public void setSex(String sex) {</p><p>  this.sex = sex;</p><p><b>  }</b></p><p>  public String getSex() {</p&

42、gt;<p>  return sex;</p><p><b>  }</b></p><p>  public void settotal(String total) {</p><p>  this.total = total;</p><p><b>  }</b></p

43、><p>  public String gettotal() {</p><p>  return total;</p><p><b>  }</b></p><p><b>  }</b></p><p>  public class Score extends JFram

44、e {</p><p><b>  /**</b></p><p><b>  * </b></p><p><b>  */</b></p><p>  private static final long serialVersionUID = 1L;</p>&

45、lt;p>  JLabel lb = new JLabel("錄入請先輸入記錄,查詢、刪除請先輸入會(huì)員號(hào),修改時(shí)對(duì)查詢" + "內(nèi)容改后的保存!");</p><p>  JTextField 會(huì)員號(hào), 姓名, 上月積分, 本月積分, 總積分;</p><p>  JRadioButton 男, 女;</p><p> 

46、 ButtonGroup group = null;</p><p>  JButton 錄入, 查詢, 刪除, 修改, 顯示;</p><p>  JPanel p1, p2, p3, p4, p5, p6, pv, ph;</p><p>  Customer1 會(huì)員 = null;</p><p>  Hashtable<Stri

47、ng, Customer1> 會(huì)員散列表 = null;</p><p>  File file = null;</p><p>  FileInputStream inOne = null;</p><p>  ObjectInputStream inTwo = null;</p><p>  FileOutputStream out

48、One = null;</p><p>  ObjectOutputStream outTwo = null;</p><p>  public Score() {</p><p>  super("會(huì)員積分信息管理系統(tǒng)");</p><p>  會(huì)員號(hào) = new JTextField(10);</p>&

49、lt;p>  姓名 = new JTextField(10);</p><p>  上月積分 = new JTextField(10);</p><p>  本月積分 = new JTextField(10);</p><p>  總積分 = new JTextField(10);</p><p>  group = new Butto

50、nGroup();</p><p>  男 = new JRadioButton("男", true);</p><p>  女 = new JRadioButton("女", false);</p><p>  group.add(男);</p><p>  group.add(女);</p&g

51、t;<p>  錄入 = new JButton("錄入");</p><p>  查詢 = new JButton("查詢");</p><p>  刪除 = new JButton("刪除");</p><p>  修改 = new JButton("修改");<

52、/p><p>  顯示 = new JButton("顯示");</p><p>  錄入.addActionListener(new InputAct());</p><p>  查詢.addActionListener(new InquestAct());</p><p>  修改.addActionListener(ne

53、w ModifyAct());</p><p>  刪除.addActionListener(new DeleteAct());</p><p>  顯示.addActionListener(new ShowAct());</p><p>  修改.setEnabled(false);</p><p>  p1 = new JPanel();

54、</p><p>  p1.add(new JLabel(" 會(huì)員號(hào):", JLabel.CENTER));</p><p>  p1.add(會(huì)員號(hào));</p><p>  p2 = new JPanel();</p><p>  p2.add(new JLabel(" 姓名:&qu

55、ot;, JLabel.CENTER));</p><p>  p2.add(姓名);</p><p>  p3 = new JPanel();</p><p>  p3.add(new JLabel(" 性別:", JLabel.CENTER));</p><p>  p3.add(男);</p>

56、;<p>  p3.add(女);</p><p>  p4 = new JPanel();</p><p>  p4.add(new JLabel(" 上月積分:", JLabel.CENTER));</p><p>  p4.add(上月積分);</p><p>  p5 = new JPa

57、nel();</p><p>  p5.add(new JLabel(" 本月積分:", JLabel.CENTER));</p><p>  p5.add(本月積分);</p><p>  p6 = new JPanel();</p><p>  p6.add(new JLabel("

58、 總積分:", JLabel.CENTER));</p><p>  p6.add(總積分);</p><p>  pv = new JPanel();</p><p>  pv.setLayout(new GridLayout(6, 1));</p><p>  pv.add(p1);</p><p> 

59、 pv.add(p2);</p><p>  pv.add(p3);</p><p>  pv.add(p4);</p><p>  pv.add(p5);</p><p>  pv.add(p6);</p><p>  ph = new JPanel();</p><p>  ph.add(錄

60、入);</p><p>  ph.add(查詢);</p><p>  ph.add(修改);</p><p>  ph.add(刪除);</p><p>  ph.add(顯示);</p><p>  file = new File("會(huì)員積分信息.txt");</p><p&

61、gt;  會(huì)員散列表 = new Hashtable<String, Customer1>();</p><p>  if (!file.exists()) {</p><p><b>  try {</b></p><p>  FileOutputStream out = new FileOutputStream(file);&l

62、t;/p><p>  ObjectOutputStream objectOut = new ObjectOutputStream(out);</p><p>  objectOut.writeObject(會(huì)員散列表);</p><p>  objectOut.close();</p><p>  out.close();</p>

63、<p>  } catch (IOException e) {</p><p><b>  }</b></p><p><b>  }</b></p><p>  Container con = getContentPane();</p><p>  con.setLayout(new B

64、orderLayout());</p><p>  con.add(lb, BorderLayout.NORTH);</p><p>  con.add(pv, BorderLayout.CENTER);</p><p>  con.add(ph, BorderLayout.SOUTH);</p><p>  setDefaultCloseO

65、peration(EXIT_ON_CLOSE);</p><p>  setBounds(100, 50, 500, 380);</p><p>  setVisible(true);</p><p><b>  }</b></p><p>  public static void main(String args[])

66、 {</p><p>  new Score();</p><p><b>  }</b></p><p>  class InputAct implements ActionListener {</p><p>  public void actionPerformed(ActionEvent e) {</p&g

67、t;<p>  修改.setEnabled(false);</p><p>  String number = "";</p><p>  number = 會(huì)員號(hào).getText();</p><p>  if (number.length() > 0) {</p><p><b>  tr

68、y {</b></p><p>  inOne = new FileInputStream(file);</p><p>  inTwo = new ObjectInputStream(inOne);</p><p>  會(huì)員散列表 = (Hashtable) inTwo.readObject();</p><p>  inOne

69、.close();</p><p>  inTwo.close();</p><p>  } catch (Exception ee) {</p><p>  System.out.println("創(chuàng)建散列表出現(xiàn)問題!");</p><p><b>  }</b></p><p&

70、gt;  if (會(huì)員散列表.containsKey(number)) {</p><p>  String warning = "該會(huì)員信息已存在,請到修改頁面修改!";</p><p>  JOptionPane.showMessageDialog(null, warning, "警告",</p><p>  JOptio

71、nPane.WARNING_MESSAGE);</p><p>  }// end if1</p><p><b>  else {</b></p><p>  String m = "該會(huì)員信息將被錄入!";</p><p>  int ok = JOptionPane.showConfirmDia

72、log(null, m, "確認(rèn)",</p><p>  JOptionPane.YES_NO_OPTION,</p><p>  JOptionPane.QUESTION_MESSAGE);</p><p>  if (ok == JOptionPane.YES_OPTION) {</p><p>  String na

73、me = 姓名.getText();</p><p>  String lastmonth = 上月積分.getText();</p><p>  String thismonth = 本月積分.getText();</p><p>  String total = 總積分.getText();</p><p>  String sex =

74、null;</p><p>  if (男.isSelected()) {</p><p>  sex = 男.getText();</p><p><b>  } else {</b></p><p>  sex = 女.getText();</p><p><b>  }</b

75、></p><p>  會(huì)員 = new Customer1();</p><p>  會(huì)員.setNumber(number);</p><p>  會(huì)員.setName(name);</p><p>  會(huì)員.setlastmonth(lastmonth);</p><p>  會(huì)員.setthismonth

76、(thismonth);</p><p>  會(huì)員.settotal(total);</p><p>  會(huì)員.setSex(sex);</p><p><b>  try {</b></p><p>  outOne = new FileOutputStream(file);</p><p> 

77、 outTwo = new ObjectOutputStream(outOne);</p><p>  會(huì)員散列表.put(number, 會(huì)員);</p><p>  outTwo.writeObject(會(huì)員散列表);</p><p>  outTwo.close();</p><p>  outOne.close();</p>

78、;<p>  } catch (Exception ee) {</p><p>  System.out.println("輸出散列表出現(xiàn)問題!");</p><p><b>  }</b></p><p>  會(huì)員號(hào).setText(null);</p><p>  姓名.setTex

79、t(null);</p><p>  上月積分.setText(null);</p><p>  本月積分.setText(null);</p><p>  總積分.setText(null);</p><p><b>  }</b></p><p>  }// end else1</p&g

80、t;<p>  }// end if0</p><p><b>  else {</b></p><p>  String warning = "必須輸入會(huì)員號(hào)!";</p><p>  JOptionPane.showMessageDialog(null, warning, "警告",&l

81、t;/p><p>  JOptionPane.WARNING_MESSAGE);</p><p>  }// end else0</p><p>  }// end actionPerformed</p><p>  }// end class</p><p>  class InquestAct implements A

82、ctionListener {</p><p>  public void actionPerformed(ActionEvent e) {</p><p>  String number = "";</p><p>  number = 會(huì)員號(hào).getText();</p><p>  if (number.length

83、() > 0) {</p><p><b>  try {</b></p><p>  inOne = new FileInputStream(file);</p><p>  inTwo = new ObjectInputStream(inOne);</p><p>  會(huì)員散列表 = (Hashtable) i

84、nTwo.readObject();</p><p>  inOne.close();</p><p>  inTwo.close();</p><p>  } catch (Exception ee) {</p><p>  System.out.println("散列表有問題!");</p><p&

85、gt;<b>  }</b></p><p>  if (會(huì)員散列表.containsKey(number)) {</p><p>  修改.setEnabled(true);</p><p>  Customer1 stu = (Customer1) 會(huì)員散列表.get(number);</p><p>  姓名.se

86、tText(stu.getName());</p><p>  上月積分.setText(stu.getlastmonth());</p><p>  本月積分.setText(stu.getthismonth());</p><p>  總積分.setText(stu.gettotal());</p><p>  if (stu.getSe

87、x().equals("男")) {</p><p>  男.setSelected(true);</p><p><b>  } else {</b></p><p>  女.setSelected(true);</p><p><b>  }</b></p>&

88、lt;p><b>  } else {</b></p><p>  修改.setEnabled(false);</p><p>  String warning = "該會(huì)員號(hào)不存在!";</p><p>  JOptionPane.showMessageDialog(null, warning, "警告&q

89、uot;,</p><p>  JOptionPane.WARNING_MESSAGE);</p><p><b>  }</b></p><p><b>  } else {</b></p><p>  修改.setEnabled(false);</p><p>  Str

90、ing warning = "必須輸入會(huì)員號(hào)!";</p><p>  JOptionPane.showMessageDialog(null, warning, "警告",</p><p>  JOptionPane.WARNING_MESSAGE);</p><p><b>  }</b></p&

91、gt;<p><b>  }</b></p><p><b>  }</b></p><p>  class ModifyAct implements ActionListener {</p><p>  public void actionPerformed(ActionEvent e) {</p&g

92、t;<p>  String number = 會(huì)員號(hào).getText();</p><p>  String name = 姓名.getText();</p><p>  String lastmonth = 上月積分.getText();</p><p>  String thismonth = 本月積分.getText();</p>

93、<p>  String total = 總積分.getText();</p><p>  String sex = null;</p><p>  if (男.isSelected()) {</p><p>  sex = 男.getText();</p><p><b>  } else {</b><

94、;/p><p>  sex = 女.getText();</p><p><b>  }</b></p><p>  Customer1 會(huì)員 = new Customer1();</p><p>  會(huì)員.setNumber(number);</p><p>  會(huì)員.setName(name);&

95、lt;/p><p>  會(huì)員.setlastmonth(lastmonth);</p><p>  會(huì)員.setthismonth(thismonth);</p><p>  會(huì)員.settotal(total);</p><p>  會(huì)員.setSex(sex);</p><p><b>  try {<

96、/b></p><p>  outOne = new FileOutputStream(file);</p><p>  outTwo = new ObjectOutputStream(outOne);</p><p>  會(huì)員散列表.put(number, 會(huì)員);</p><p>  outTwo.close();</p>

97、;<p>  outOne.close();</p><p>  會(huì)員號(hào).setText(null);</p><p>  姓名.setText(null);</p><p>  上月積分.setText(null);</p><p>  本月積分.setText(null);</p><p>  總積分

98、.setText(null);</p><p>  } catch (Exception ee) {</p><p>  System.out.println("錄入修改出現(xiàn)問題!");</p><p>  修改.setEnabled(false);</p><p><b>  }</b></p

99、><p><b>  }</b></p><p><b>  }</b></p><p>  class DeleteAct implements ActionListener {</p><p>  public void actionPerformed(ActionEvent e) {</p&

100、gt;<p>  修改.setEnabled(false);</p><p>  String number = 會(huì)員號(hào).getText();</p><p>  if (number.length() > 0) {</p><p><b>  try {</b></p><p>  inOne =

101、new FileInputStream(file);</p><p>  inTwo = new ObjectInputStream(inOne);</p><p>  會(huì)員散列表 = (Hashtable) inTwo.readObject();</p><p>  inTwo.close();</p><p>  inOne.close(

102、);</p><p>  } catch (Exception ee) {</p><p><b>  }</b></p><p>  if (會(huì)員散列表.containsKey(number)) {</p><p>  Customer1 stu = (Customer1) 會(huì)員散列表.get(number);<

103、/p><p>  姓名.setText(stu.getName());</p><p>  上月積分.setText(stu.getlastmonth());</p><p>  本月積分.setText(stu.getthismonth());</p><p>  總積分.setText(stu.gettotal());</p>

104、<p>  if (stu.getSex().equals("男")) {</p><p>  男.setSelected(true);</p><p><b>  } else {</b></p><p>  女.setSelected(true);</p><p><b>  

105、}</b></p><p><b>  }</b></p><p>  String m = "確定要?jiǎng)h除該會(huì)員的記錄嗎?";</p><p>  int ok = JOptionPane</p><p>  .showConfirmDialog(null, m, "確認(rèn)&quo

106、t;,</p><p>  JOptionPane.YES_NO_OPTION,</p><p>  JOptionPane.QUESTION_MESSAGE);</p><p>  if (ok == JOptionPane.YES_OPTION) {</p><p>  會(huì)員散列表.remove(number);</p>&

107、lt;p><b>  try {</b></p><p>  outOne = new FileOutputStream(file);</p><p>  outTwo = new ObjectOutputStream(outOne);</p><p>  outTwo.writeObject(會(huì)員散列表);</p><

108、;p>  outTwo.close();</p><p>  outOne.close();</p><p>  會(huì)員號(hào).setText(null);</p><p>  姓名.setText(null);</p><p>  上月積分.setText(null);</p><p>  本月積分.setText(

109、null);</p><p>  總積分.setText(null);</p><p>  } catch (Exception ee) {</p><p>  System.out.println(ee);</p><p><b>  }</b></p><p>  } else if (ok

110、== JOptionPane.NO_OPTION) {</p><p>  會(huì)員號(hào).setText(null);</p><p>  姓名.setText(null);</p><p>  上月積分.setText(null);</p><p>  本月積分.setText(null);</p><p>  總積分.s

111、etText(null);</p><p><b>  } else {</b></p><p>  String warning = "該會(huì)員不存在!";</p><p>  JOptionPane.showMessageDialog(null, warning, "警告",</p>&l

112、t;p>  JOptionPane.WARNING_MESSAGE);</p><p><b>  }</b></p><p><b>  } else {</b></p><p>  String warning = "必須輸入會(huì)員號(hào)!";</p><p>  JOpti

113、onPane.showMessageDialog(null, warning, "警告",</p><p>  JOptionPane.WARNING_MESSAGE);</p><p><b>  }</b></p><p><b>  }</b></p><p><b&

114、gt;  }</b></p><p>  class ShowAct implements ActionListener {</p><p>  public void actionPerformed(ActionEvent e) {</p><p>  new CustomerShow(file);</p><p><b&

115、gt;  }</b></p><p><b>  }</b></p><p>  class CustomerShow extends JDialog {</p><p><b>  /**</b></p><p><b>  * </b></p>&

116、lt;p><b>  */</b></p><p>  private static final long serialVersionUID = 1L;</p><p>  Hashtable 會(huì)員散列表 = null;</p><p>  JTextArea 顯示 = null;</p><p>  FileIn

117、putStream inOne = null;</p><p>  ObjectInputStream inTwo = null;</p><p>  File file = null;</p><p>  public CustomerShow(File file) {</p><p>  super(new JFrame(), "

118、;顯示對(duì)話框");</p><p>  this.file = file;</p><p>  顯示 = new JTextArea(16, 30);</p><p><b>  try {</b></p><p>  inOne = new FileInputStream(file);</p>

119、<p>  inTwo = new ObjectInputStream(inOne);</p><p>  會(huì)員散列表 = (Hashtable) inTwo.readObject();</p><p>  inTwo.close();</p><p>  inOne.close();</p><p>  } catch (Exce

120、ption ee) {</p><p><b>  }</b></p><p>  if (會(huì)員散列表.isEmpty())</p><p>  顯示.append("目前還沒有會(huì)員的信息記錄!\n");</p><p><b>  else {</b></p>&

121、lt;p>  顯示.setText("會(huì)員號(hào) 姓名 性別 上月積分 本月積分 總積分 \n");</p><p>  for (Enumeration enm = 會(huì)員散列表.elements(); enm.hasMoreElements();) {</p><p>  Customer1 stu = (Custom

122、er1) enm.nextElement();</p><p>  String sex = "";</p><p>  if (stu.getSex().equals("男"))</p><p>  sex = "男";</p><p><b>  else</b&

123、gt;</p><p>  sex = "女";</p><p>  String str = stu.getNumber() + " " + stu.getName()</p><p>  + " " + sex + " " + stu.getlas

124、tmonth()</p><p>  + " " + stu.getthismonth()</p><p>  + " " + stu.gettotal() + "\n";</p><p>  顯示.append(str);</p><

125、p><b>  }</b></p><p><b>  }</b></p><p>  JScrollPane scroll = new JScrollPane(顯示);</p><p>  Container con = getContentPane();</p><p>  con.add

126、("Center", scroll);</p><p>  con.validate();</p><p>  setVisible(true);</p><p>  setBounds(200, 200, 400, 300);</p><p>  addWindowListener(new WindowAdapter()

127、 {</p><p>  public void windowClosing(WindowEvent e) {</p><p>  setVisible(false);</p><p><b>  }</b></p><p><b>  });</b></p><p><

128、;b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p> ?。?)CustomerManager.java (會(huì)員基本信息管理)</p><p>  package CRM;</p><p>  

129、import java.awt.*;</p><p>  import java.awt.event.*;</p><p>  import javax.swing.*;</p><p>  import java.io.*;</p><p>  import java.util.*;</p><p>  class

130、Customer implements java.io.Serializable {</p><p>  String number, name, address, telephone, borth, sex;</p><p>  public Customer() {</p><p><b>  };</b></p><p

131、>  public void setNumber(String number) {</p><p>  this.number = number;</p><p><b>  }</b></p><p>  public String getNumber() {</p><p>  return number;&l

132、t;/p><p><b>  }</b></p><p>  public void setName(String name) {</p><p>  this.name = name;</p><p><b>  }</b></p><p>  public String ge

溫馨提示

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

評(píng)論

0/150

提交評(píng)論