湖北工業(yè)大學(xué) 丁 娜
JSP是JavaServerPages的簡寫。JSP技術(shù)能讓W(xué)eb開發(fā)員和網(wǎng)頁設(shè)計員快速地開發(fā)容易維護(hù)的動態(tài)Web主頁。用JSP開發(fā)的Web應(yīng)用是跨平臺的,即能在Linux下運(yùn)行,也能在其它操作系統(tǒng)上運(yùn)行。JSP技術(shù)使用Java編程語言編寫類XML的Tags和Scriptlets,來封裝產(chǎn)生動態(tài)網(wǎng)頁的處理邏輯。網(wǎng)頁還能通過Tags和Scriptlets訪問存在于服務(wù)端的資源的應(yīng)用邏輯。JSP將網(wǎng)頁邏輯與網(wǎng)頁設(shè)計和顯示分離,支持可重用的基于組件的設(shè) 計,使基于Web的應(yīng)用程序的開發(fā)變得迅速和容易。
國際化主要考慮的問題就是如何使得程序中與用戶交互的部分,采用哪一種方式使得程序在經(jīng)過少量的修改甚至不需要修改源代碼的情況下,適用于任何一種國家或者地區(qū)的用戶來使用。因此國際化的程序有以下幾個特征:
(1)可以迅速的本地化。
(2)用戶界面的顯示文字、狀態(tài)消息的顯示文字以及錯誤信息、提示信息的文字等,在程序中不進(jìn)行硬編碼。他們存儲在源代碼處,可自動進(jìn)行動態(tài)檢索。
(3)與用戶文化有關(guān)的數(shù)據(jù),如日期和貨幣,其顯示格式根據(jù)最終用戶的地區(qū)和語言而定。
(4)國際化和本地化同時存在,相輔相成,一個是過程,一個是結(jié)果。
如果開發(fā)的Web應(yīng)用只供中文用戶使用的話,就無須考慮國際化問題,但是實踐證明,在Web應(yīng)用的中文應(yīng)用上經(jīng)常遇到亂碼的情況。
處理Struts應(yīng)用國際化處理的一般步驟如下:
(1)將所有的JSP頁面的自負(fù)編碼統(tǒng)一為”GBK”,即charset=”GBK”。
(2)對文本,標(biāo)簽國際化.如:text中
(3)對按鈕國際化.如:submit中
(4)對連接國際化.如:link中使用
(5)創(chuàng)建不同語言的資源文件,即ApplicationResources _en.properties和 ApplicationResources_zh_CN.properties.可使用eclipse的propedit插件來進(jìn)行中文資源文件的編輯,它將自動轉(zhuǎn)換為Unicode編碼。
(6)最后再編寫一個處理頁面數(shù)據(jù)傳輸字符編碼格式的過濾器,采用Servlet過濾器編程,在web.xml中映像到程序中的過濾器,
Log4j是Apache的一個開放源代碼項目,通過使用Log4j,我們可以控制日志信息輸送;也可以控制每一條日志的輸出格式;通過定義每一條日志信息的級別,我們能夠更加細(xì)致地控制日志的生成過程。最令人感興趣的就是,這些可以通過一個配置文件來靈活地進(jìn)行配置,而不需要修改應(yīng)用的代碼。
Log4j的好處在于:
(1)通過修改配置文件,就可以決定log信息的目的地——控制臺、文件、GUI組件、甚至是套接口服務(wù)器、NT的事件記錄器、UNIXSyslog守護(hù)進(jìn)程等。
(2)通過修改配置文件,可以定義每一條日志信息的級別,從而控制是否輸出。在系統(tǒng)開發(fā)階段可以打印詳細(xì)的log信息以及跟蹤系統(tǒng)運(yùn)行情況,而在系統(tǒng)穩(wěn)定后可以關(guān)閉log輸出,從而在能跟蹤系統(tǒng)運(yùn)行情況的同時,又減少了垃圾代碼。
(3)使用log4j,需要整個系統(tǒng)有一個統(tǒng)一的log機(jī)制,有利于系統(tǒng)的規(guī)劃。
通常在Web應(yīng)用中,可通過web.xml配置在應(yīng)用啟動時就載入Log4j的配置文件以簡化工作。以下是全面優(yōu)化的配置步驟:
(1)創(chuàng)建一個載入Log4j配置文件的HttpServlet。
(2)將該HttpServlet配置到web.xml中。
(3)編寫HttpServlet載入Log4j的配置文件的代碼。
(4)在其它的JSP或者Servlet正常使用Log4j輸出日志記錄。
首先簡要介紹系統(tǒng)登錄的流程:
用戶打開IE或者Firefox,在其中輸入http://< server>/LogCheck,便進(jìn)入登錄界面。
隨后輸入姓名和密碼,進(jìn)行登錄。
(1)如果輸入的姓名或者密碼不對 ,或是沒有輸入,那么都不會跳轉(zhuǎn)到下一個頁面;只有當(dāng)輸入正確的情況才會進(jìn)入操作頁面。
(2)在輸入的用戶名和密碼正確的情況下,系統(tǒng)會自行判斷用戶所屬的類型,本系統(tǒng)將所有用戶分為了3個等級:員工、項目組長和系統(tǒng)管理員。它們分別對應(yīng)不同的操作。
由于日志考勤管理系統(tǒng)的概念比較新穎,并從未接觸過此類系統(tǒng)的設(shè)計,通過這段時間對這個系統(tǒng)的設(shè)計,明白了要實現(xiàn)整個系統(tǒng)需求分析的過程是最重要的過程。由于尚未出現(xiàn)此類系統(tǒng)的相關(guān)資料,在前期寫需求分析是困擾我們的一大難題,投入了大量的時間和精力在需求分析這一塊,力求更完善的系統(tǒng)功能。在此過程當(dāng)中,使得對建模工具的使用和數(shù)據(jù)庫的設(shè)計有更深刻的理解,每一次的更改都是一個進(jìn)步的過程,就像迭代式的軟件開發(fā)一樣,自身也在成長,深刻理解做軟件就如同做人這句話。
[1][美]BrettSpell著.《ProfessionalJava》.清華大學(xué)出版社,2006-11.
[2][美]SharonZakhour著.《JavaGuider》.人民郵電出版社,2008-04-16.
[3]閻宏著.《Java與模式》.電子工業(yè)出版社,2002-11-23.