freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

面向?qū)ο笳n程設(shè)計(jì)---工資管理系統(tǒng)(完整版)

  

【正文】 設(shè)計(jì) 外層模塊設(shè)計(jì) 外層模塊模樣 根據(jù)個(gè)人設(shè)計(jì)思路,設(shè)計(jì)的外側(cè)模塊的模樣如 圖 2 圖 2 外側(cè)模塊設(shè)計(jì), 首先新建一個(gè)叫 MyApplet 的類,并繼承 java 下 applet 包中的 Applet類,在這里,也可以自己定義一個(gè)自己的框架的類,去繼承 Frame 類,但是簡(jiǎn)單起見(jiàn),我就定義了自己的框架的類,并繼承了 Applet 類,這樣有些 Applet 已經(jīng)實(shí)現(xiàn)的功能就不需要我自己去實(shí)現(xiàn)了,比如當(dāng)你點(diǎn)擊這個(gè)類運(yùn)行而得的窗口的右上角的“ X”時(shí),窗口就關(guān)閉了,如果沒(méi)有繼承 Applet 類,那么這些功能將由自己實(shí)現(xiàn),查看 java 的那套 api 會(huì)發(fā)現(xiàn)里面有個(gè)一屬性常量,給定義的窗口設(shè)置該屬性就可以解決。 功能要求 ( 1) 查詢功能中,用戶查詢時(shí)可以選擇按工號(hào)查詢,也可以選擇姓名進(jìn)行查詢, 也可以選擇查詢工資總額在某個(gè)范圍內(nèi)的員工的工資信息,比如查詢工資總額在 1000~2021 的全體員工的信息,還以查詢?nèi)w員工工資,并且選擇按某種方式排序 。 ( 2) 修改 功能中 ,用戶可以選擇修改方式,比如修改某一行,即選擇修改某個(gè)員工的工資,此時(shí)需要輸入修改項(xiàng),即基礎(chǔ)工資、職務(wù)工資和獎(jiǎng)金中的一項(xiàng),因?yàn)楣べY總額是基礎(chǔ)工資、職務(wù)工資和獎(jiǎng)金的綜合,故不能直接修改,同時(shí)還需要輸入工號(hào),為了避免誤改,所以需要確認(rèn)修改后才能修改;也可以選擇修改某一列,即選擇修改全體員工的某一項(xiàng)工資,所以還需要選擇修改項(xiàng),其中的修改項(xiàng)也只有基礎(chǔ)工資、職務(wù)工資和獎(jiǎng)金三項(xiàng)。 參考印旻主編的《 java 與面向?qū)ο蟪绦蛟O(shè)計(jì)教程》第八章的布局設(shè)計(jì)可知: FlowLayout的布局方式雖然非常簡(jiǎn)單,但是這種布局的容器會(huì)將容器的里的組件按照加入的順序一個(gè)個(gè)從左往右, 從上往下的排列。 外層容器的對(duì)子容器放置的布局是 GridBagLayout 布局設(shè)計(jì),而子容器中又使用簡(jiǎn)單布局設(shè)計(jì)。 ()。 ( 4) 用 GridLayout的布局設(shè)計(jì)分別將查詢按鈕、儲(chǔ)存按鈕、修改按鈕和刪除按鈕加入Panel[1]中,然后用 GridBagLayout的布局設(shè)計(jì)將 Panel[1]加入 MyApplet中。 b[1].addActionListener(this)。i++){ p[1].add(b[i])。 CardLayout的使用步驟: 工資管理系統(tǒng) 7 / 67 ( 1) 創(chuàng)建一個(gè) CardLayout對(duì)象作為布局編輯器 : Mycard = new CardLayout()。 p[2].setLayout(myCard)。 //事件處理:當(dāng)用戶點(diǎn)擊四大功能按鈕時(shí),下方顯示對(duì)應(yīng)的功能的子模塊 public void actionPerformed(ActionEvent e) { (p[2], ())。 查詢方式下拉框中有按工號(hào)、按姓名和默認(rèn)全部的選項(xiàng);查詢范圍的下拉框中有各個(gè)階段范圍的對(duì)應(yīng)選擇,默認(rèn)是范圍不限;排列下拉框中有按基礎(chǔ)工資、職務(wù)工資、獎(jiǎng)金、工資總額和默認(rèn)是工號(hào)的選項(xiàng);排序下拉框中就升序和降序兩種選擇,默認(rèn)是升序排序。 c[i].addItemListener(this)。 c[1].add(20215000)。 c[2].add(按基礎(chǔ)工資 )。 工資管理系統(tǒng) 11 / 67 圖 5 查詢模塊事件處理 該模塊中共有四個(gè)下拉框,一個(gè)工號(hào)輸入框,一個(gè)姓名輸入文本框和一個(gè)現(xiàn)實(shí)文本框,第一個(gè)個(gè)查詢方式下拉框。 else if(c[0].getSelectedIndex()==2){ ()。 實(shí)現(xiàn)代碼如下: L[0] = new Label(姓 名 )。 (t[i])。 儲(chǔ)存模 事件處理 本模塊共有四個(gè)輸入文本框,一個(gè)增加員工按鈕,一個(gè)清空按鈕和一個(gè)顯示文本框。i++) t[i].setText()。 圖 8 修改模塊的設(shè)計(jì),新建一個(gè)叫 UpdatePanel的 java類,布局設(shè)計(jì)同上。即可;當(dāng)用戶選擇修改行時(shí)重置過(guò)來(lái)即setFocusable(true)。 } catch (NumberFormatException e1) { newValue = 1。 //實(shí)例化一個(gè)對(duì)話框 Panel p1 = new Panel()。 (Center,p1)。 Panel p1 = new Panel()。 (Center,p1)。 (Y)。 !(xx) amp。 Panel p2 = new Panel()。 }else if(()==Y amp。 row = (colum, newValue)。 ()。 (confirm)。刪除容器中加入了一個(gè)子容器 select, Panel select中加入了提示輸入工號(hào)的標(biāo)簽、工輸入框、空標(biāo)簽和刪除按鈕;下方是一個(gè)和 select平級(jí)的文本框,用來(lái)顯示用戶刪除的員工的 信息。 } y_n = new Dialog(,確定刪除? ,true)。 (N)。 Panel p2 = new Panel()。 }else{ success = new Dialog(,刪除失敗 ,true)。 (true)。 (confirm)。后,建數(shù)據(jù)庫(kù)的工作將就完成了。 private int bonus。s automatic session context management property name=current_session_context_classthread/property ! Disable the secondlevel cache ! 不用 hibernate的二級(jí)緩存 property name=/property ! Echo all executed SQL to stdout ! 配置在執(zhí)行過(guò)程中打印 sql語(yǔ)句,方便查錯(cuò) property name=show_sqltrue/property ! 顯示格式化的 sql語(yǔ)句 property name=format_sqltrue/property ! Drop and recreate the database schema on startup ! 配置為每次不先刪表再建表,否則每次都會(huì)刪除以前的數(shù)據(jù) property name=update/property ! 配置自己寫的實(shí)體類 mapping class=/ ( 5) 配置日志文件,將日志文件按 也配置好。以后每次執(zhí)行注解為 Test的方法時(shí)都會(huì)先調(diào)用 beforeclass方法,結(jié)束時(shí)都會(huì)調(diào)用 afterclass方法。 (1000)。 其余地方與儲(chǔ)存的一模一樣,不再贅述。 IteratorUser u = (sqls).addEntity(u, ).list().iterator()。 加載驅(qū)動(dòng) ().newInstance()。 ()。 ()。 (您輸入的基礎(chǔ)工資有誤! )。 flag){ try { bonus = (t[3].getText())。 在用 jdbc連接數(shù)據(jù)庫(kù)的過(guò)程中可能產(chǎn)生的異常有如下: Try{?? } catch (InstantiationException e) { ()。 } public String toString(){ return 通過(guò) hibernate訪問(wèn)和操縱數(shù)據(jù)庫(kù)異常?。?! 。 while(()){ (().toString())。 也可以在HibernateOperate 的方法中 catch,特別是已經(jīng)將顯示文本框的引用傳過(guò)來(lái)后,在這里catch就方便多了, 如按工號(hào)刪除員工的方法: public boolean testDeleteById(int id,TextField tf){ //按工號(hào)刪除 boolean flag=false。 flag = true。在主模塊中, 有按鈕可以隨時(shí)選擇四個(gè)子模塊中的任意一個(gè), 用戶可以隨時(shí)選擇。刪除時(shí)更是謹(jǐn)慎,在執(zhí)行刪除操作前,系統(tǒng)會(huì)將用戶將要?jiǎng)h除的員工的信息打印在顯示文本框中,提示用戶是否確認(rèn)刪除,確保用戶不會(huì)誤改。 工資管理系統(tǒng) 36 / 67 參考文獻(xiàn) [1] 印旻 . Java 與面向?qū)ο蟪绦蛟O(shè)計(jì)教程 .北京:高等教育出版社, 1999. [2] Joshua Bloch,Neal Gafter. Java 解惑 .北京: 人民郵電出版社 , 2021. [3] Bruce Eckel. Java 編程思想 (第四版 ).北京: 機(jī)械工業(yè)出版社 ,2021:378485,576582. [4] 孫衛(wèi)琴 . Java 面向?qū)ο缶幊?.北京: 電子工業(yè)出版社 , 2021. [5] Gay ,Gary Cornell. Java 核心技術(shù) 卷 I.北京: 機(jī)械工業(yè)出版社 , 2021:270302,523533. [6] Christian Bauer, Gaving King. Hibernate 實(shí)戰(zhàn) (第二版 ).北京: 人民郵電出版社 , 2021. [6] [7] 工資管理系統(tǒng) 37 / 67 附錄 1 外層模塊源碼 package 。 import 。 Panel p[] = new Panel[3]。//修改模塊 DeletePanel dp = new DeletePanel()。 工資管理系統(tǒng) 38 / 67 b[1].addActionListener(this)。//加載標(biāo)題 p[1] = new Panel(new GridLayout(1,4))。 p[2].setLayout(myCard)。 b[2].addActionListener(this)。 ()。// 創(chuàng)建布局對(duì)象 GridBagConstraints gbc = new GridBagConstraints()。 import 。 import 。 在編寫 hibernate訪問(wèn)數(shù)據(jù)庫(kù)程序時(shí),更多的解決方法是看 hibernate自帶的文檔,各 工資管理系統(tǒng) 34 / 67 種注解、各種訪問(wèn)方式,都非常有必要參考這個(gè)文檔。本課題中用到了 hibernate的幾種注解,也用了幾種系統(tǒng)定義的異常,同時(shí)自定義了異常類。 } ()。 Session session = ()。 ()。如: 在 HibernateOperate中的 public void testQuerySpecil(String msg,String mss,String mgg,TextArea ta) throws UserException{ sf = new AnnotationConfiguration().configure().buildSessionFactory()。 } catch (ClassNotFoundException e) { ()。 (您輸入的獎(jiǎng)金有誤! )。amp。 5 異常處理 根據(jù)本課題的設(shè)計(jì)思路,在外層模塊的設(shè)計(jì)中,一般不涉及到異常的處理, 由于整個(gè)過(guò)程中有很多異常,并且一類異常也有很多,所以就將異常分類來(lái)討論,這樣就不會(huì)重復(fù),過(guò)程中把有些系統(tǒng)異常改為了自定義異常,作為自定
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1