【正文】
UG: + url)。 } catch (Exception e) { } (DEBUG: + Dispatch)。 RequestDispatcher requestDispatcher = getServletContext(). getRequestDispatcher(url)。 (request, response)。//觸發(fā)跳轉(zhuǎn)動作 } } } public void doGet(HttpServletRequest request,//瀏覽器發(fā)出請求 HttpServletResponse response) throws//初始化 doGet 方法 ServletException, IOException { doPost(request, response)。 } public void destroy() { }//清空資源 } 模塊(類) DbBean ? 模塊名稱 DbBean ? 模塊功能描述 該類的功能是,通過 Weblogic( Data Pool)的連接池,用數(shù)據(jù)源來標(biāo)識 Data Pool,并通過 look up()這種方法來解析,即進(jìn)行數(shù)據(jù)庫連接之后并通過 SQL 語句對數(shù)據(jù)庫進(jìn)行插入、查詢和刪除等操作。 ? 與其他模塊的聯(lián)系和性質(zhì) 該類是一個(gè)底層的控制基類。 ? 接口和方法定義 public class DbBean{ public Connection con = null。 public Statement stmt=null。 基于 WEB 的工資管理系統(tǒng) 21 public ResultSet rs = null。 public DbBean(){ } public int Dbconnector_insert(String sql){//插入記錄到數(shù)據(jù)庫中 int int_res = 1。 try{ Context ctx = new InitialContext()。 DataSource ds=()(SQL DS)。 //與連接池建立聯(lián)系 con=()。 stmt = ()。 int_res = (sql)。 }catch(Exception e){ int_res=0。 return int_res。 } return int_res。 } public ResultSet Dbconnector_query(String sql){//查詢數(shù)據(jù)庫中的記錄 try{ try{ Context ctx = new InitialContext()。 DataSource ds=()(SQL DS)。 con=()。 stmt = ()。 }catch(Exception e){ (ERROR:+())。 } rs = (sql)。 }catch(Exception e){ (executeQueryERROR:+())。 } return rs。 } 模塊(類) CommandCore ? 模塊名稱 CommandCore 類 ? 模塊功能描述 處理 Servlet 從界面獲取的數(shù)據(jù)并把這些數(shù)據(jù)放入到 HasgMap 容器中,供其他模塊調(diào)用。 與其他模塊的聯(lián)系和性質(zhì) 淮安信息職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)論文 22 該類是一個(gè)底層的控制基類。 ? 接口和方法定義 public class CommandCore { public CommandCore() { } HashMap processRequest(HttpServletRequest request) { String name。 String value。 HashMap result = new HashMap()。 Enumeration names = ()。 //定義一個(gè)枚舉類型的對象,存儲從界面獲取的數(shù)據(jù) while (()) { //把數(shù)據(jù)放入容器中 name = (String) ()。 value = (name)。 (name, value)。 } return result。 //返回一個(gè)數(shù)據(jù)集 } } 數(shù)據(jù)庫設(shè)計(jì): 在本次實(shí)習(xí)的模擬系統(tǒng)中,數(shù)據(jù)庫的設(shè)計(jì)較為簡單。以這次模擬實(shí)現(xiàn)的功能為基本的擴(kuò)展點(diǎn),在一定程度上滿足再次開發(fā)的需要。設(shè)計(jì)的數(shù)據(jù)庫的 ERD 圖如下圖所示。 系統(tǒng)的數(shù)據(jù)流程圖如圖所示: 圖 設(shè)計(jì)的數(shù)據(jù)庫的 ERD 圖 如下圖所示。 工資福利 津貼調(diào)整 員工工資福利 津貼設(shè)置表 工資計(jì)算 月度工資表 工資發(fā)放 工資福利津貼調(diào)整 員工工資福利津貼設(shè)置表 工資計(jì)算 月度工資 表工資發(fā)放基于 WEB 的工資管理系統(tǒng) 23 圖 尚未解決的問題 程序只實(shí)現(xiàn)了需求分析中的部分功能實(shí)現(xiàn),因此有繼續(xù)開發(fā)擴(kuò)展的必要。還有界面的設(shè)計(jì)沒有投入太多的經(jīng)歷可以設(shè)計(jì)出更精美的界面。對于服務(wù)器不支持中文的問題也未克服。 P e r s o n P e r I D P e r P a s s w o r d P e r A u t h o r i t y P e r N a m e P e r S e x P e r J o b P e r E d u L e v e l P e r S p e c i a l t y P e r S t a t e D e p I DD e p a r t m e n t D e p I D D e p N a m e D e p T y p e D e p I n t r oS a l a r y S a l I D S a l B a s i c S a l A d d A l l o w a n c e S a l A d d S u b s i d y S a l A d d C h a n g e S a l S u b H o u s e S a l S u b M i s s S a l S u b M e d i c i n e1 : nS a l O f P e r s o nP K P e r s o n I DP K S a l I D S a l Y e a r M o n t h1 : 1 1 : 1淮安信息職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)論文 24 3. 結(jié)論 通過這幾個(gè)月的努力,我終于完成了本次任務(wù)。 在學(xué)校的時(shí)候我曾經(jīng)使用過 c++來實(shí)現(xiàn)這個(gè)功能,而這一次我使用的體系架構(gòu)和開發(fā)平臺我產(chǎn)品能夠來沒 有接觸過,給自己帶來了一定的挑戰(zhàn)。 由于本系統(tǒng)是基于 Web 的開發(fā),因此給代碼的調(diào)試帶來了很多不便。通過這次設(shè)計(jì)我對 MVC 模式、 Java、 J2EE 和 Weblogic Server 有了一個(gè)全新的認(rèn)識。在這之前我一直都很堅(jiān)信 Java 是一種類似于 C++這樣的語言,跟 C++相比只是少了指針罷了。可現(xiàn)在我也同意 Java 是一種平臺的說法了, 的確以前 java 宣稱的是一種跨平臺的語言,那么現(xiàn)在 java 已經(jīng)發(fā)展成了平臺,而且不是一種平臺。而且通過這一段時(shí)間的了解,我想未來 java 一定會發(fā)展成為更多的平臺。通過這次設(shè)計(jì)我也基本搞 清了語言和平臺的區(qū)別, windows 就是一種平臺(操作系統(tǒng)平臺), windows 上的 c++是在 windows 上的一種語言。區(qū)別就是這樣,如果 java是平臺,那么它就可以成為 windows,事實(shí)上在嵌入式領(lǐng)域,如手機(jī), java 確實(shí)已經(jīng)成為手機(jī)的 windows 啦。任何語言只有運(yùn)行在相應(yīng)的平臺上才有威力??墒莏ava 的恐怖之處就在于它本身就是平臺。極端一點(diǎn),如果給個(gè)人 pc 嵌入一塊帶jvm 的芯片,在你的個(gè)人電腦上就可以向運(yùn)行匯編語言一樣,運(yùn)行 java 語言。這也許就是系統(tǒng)結(jié)構(gòu)中所說的支持高級語言的計(jì)算機(jī)吧,實(shí)際上 C+ +也可以,其他高級語言也可以,但是現(xiàn)在只有 java 是唯一為此做好準(zhǔn)備的。這就是平臺的威力,更是 java 定位的改變,其實(shí)這種改變已經(jīng)有好幾年啦,但我是現(xiàn)在才體會到的。因此把 java 與任何一種語言比較都是不恰當(dāng)?shù)摹H绻且容^, java也只適合與平臺進(jìn)行比較。遺憾的是與 java 一樣的平臺好像只有它一個(gè), java不可能和操作系統(tǒng)比較的,雖然在 jvm中可以看到許多操作系統(tǒng)的影子,但是 java太輕量級啦。 . 也許算得上是平臺但是它叫 framework 不是 platform,如果微軟都只把它叫 framework,我們 沒有理由把它叫做 platform 的。據(jù)說 sun 曾經(jīng)就java 幾個(gè)平臺的名字咨詢過語言學(xué)家,如果是這樣,更從一個(gè)側(cè)面證明啦 java現(xiàn)在的發(fā)展重心,從跨平臺到成為平臺的轉(zhuǎn)變。再次,就是通過這次開發(fā)真正體會到了 J2EE 框架與 MVC 模式相配合的功效。在 Model 這一層我們是采用了JavaBeans 來處理的, View 這一層是采用 JSP, Controller 也是用 Servlet 來處理。這樣一來的確實(shí)現(xiàn)了代碼的很好重用和項(xiàng)目的同時(shí)開發(fā)。這樣跟以往的開發(fā)想比無論是在開發(fā)時(shí)間還是效率上都有了很大的改進(jìn)。因此 在面向?qū)ο蟮木幊讨?,我們作為軟件編程人員應(yīng)更加注重代碼的重用性和可維護(hù)性。設(shè)計(jì)模式使我們可以更加簡單方便地復(fù)用成功的設(shè)計(jì)和體系結(jié)構(gòu)。將已證實(shí)的技術(shù)表述成設(shè)計(jì)模式也會使新系統(tǒng)開發(fā)者更加容易理解其設(shè)計(jì)思路。因此,進(jìn)行面向?qū)ο蟮能浖_發(fā),采用什么樣的設(shè)計(jì)模式將顯得尤為重要。 總之,通過這次畢業(yè)設(shè)計(jì)我對 J2EE 架構(gòu)和 MVC 模式有了一次感性的認(rèn)識,真正把理論與實(shí)踐很好的結(jié)合起來,對它們的理解也更為深入了。 致謝 25 致謝 在論文完成之際,我首先向關(guān)心 、 幫助和指導(dǎo)我的老師表示衷心的感謝并致以崇高的敬意! 在論文工作中,遇到了 很多問題 , 得到 了老師的親切關(guān)懷和悉心指導(dǎo)。 指導(dǎo)老師以其淵博的學(xué)識、嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度、求實(shí)的工作作風(fēng)和他敏捷的思維給我留下了深刻的印象,我將終生難忘 ! 再一次向他表示衷心的感謝,感謝他為學(xué)生營造的濃郁學(xué)術(shù)氛圍,以及學(xué)習(xí)、生活上的無私幫助 ! 值此論文完成之際,謹(jǐn)向老師致以最崇高的謝意 ! 在學(xué)校的學(xué)習(xí)生活即將結(jié)束,回顧 三 年多來的學(xué)習(xí)經(jīng)歷,面對現(xiàn)在的收獲,我感到無限欣慰。為此,我向熱心幫助過我的所有老師和同學(xué)表示由衷的感謝 ! 在我即將完成學(xué)業(yè)之際,我深深地感謝我的家人給予我的全力支持! 最后,衷心地感謝在百忙之中評閱論文和參加 答辯的各位 老師 致謝 26 參考文獻(xiàn) Lawrence . 軟件工程 [M] 北京:高等教育出版社 .2021 . Java 2 編程指南 [M] 北京: 電子工業(yè)出版社 .2021 . Jsp 與網(wǎng)站開發(fā)編程實(shí)踐 [M] 北京: 科學(xué)出版社 .