前言
1.為什么要討論?
簡單的來說,就是就用來開發Web應用所需要的技術,目前有很多討論各種技術的論壇,但我在這里想討論的是橫向方面,也就是在WEB應用開發中,如何把各種技術結合起來,提高開發效率.用更通俗的話講,不要講最先進的,講最有用的.
2.內容包括什么?
WEB開發技術包括三個層面:
a) 顯示層. 頁面制作 ,這個通常由美工完成
b) 邏輯層.主要討論的內容,包括Struts,Hibernate,模式,代碼生成技術(Xdoclet,Middlegen),自動構建(Maven)Taglib
c) 資源層. 討論數據庫的設計,MSSQL,Oracle,存儲過程,觸發器.
3.目的
做Web開發的難點之一就是比較分散,不像做GUI界面那樣緊湊,比如寫了一個Servlet,就要配置web.xml,修改了數據庫的字段,就要修改各種邏輯,而修改數據庫這種情況恰恰是經常發生的,所以開發人員要往返的修改,同步. 除了這些,web開發所需要的人也是不同的,有美工,數據庫設計,邏輯開發,這些人如何協調起來,如何同步,這些都對提高開發效率有直接的影響.
我在這里討論的技術不一定是萬能的,這些只是我積累的經驗,我也在不停的完善中.
第一篇: 漢字編碼的問題
也許漢字是Web開發中最常見的問題了,所以就拿這個問題開始我們的討論吧!
1.漢字問題出現的場合
a. 獲取參數Request.getParameter("param"); 在Tomcat下,默認是ISO8859-1,因此若要正確獲得參數,需要轉換成GB2132;
b. 頁面的漢字顯示。
這里有兩種情況,
I )當jsp要被解析成Servlet時,容器讀取<%@ page contentType="text/Html; charset=gb2312" 以確定文件的編碼,故通常應該設置。
當IE得到頁面要顯示時,通過<meta http-equiv="Content-Type" content="text/html; charset=gb2312">來確定顯示的編碼.
II) 假如沒有設置編碼,則頁面的編碼為 ISO8859-1,這時候假如要顯示漢字,可以采用unicode編碼形式來顯示漢字. 如直接out. 把漢字轉換成Unicode編碼可以用jdk 1.5 下的一個工具.可以把一個文件里的漢字全部轉換成Unicode編碼.這種方法就沒有前面這種方便了. c.Beans中的編碼。在java Beans中的編碼時默認編碼,假如平臺的默認編碼時GB2312,則在Java Beans中不需要非凡轉換。 d.數據庫的編碼。數據庫也有自己的默認編碼。MySQL的默認編碼為ISO8859,MSSQL/Orcale的默認編碼為平臺編碼,在Windows下均為GB2312。當向數據庫寫數據庫,應該根據數據庫的編碼做相應變換。 2.如何實現漢字編碼的自動轉換 從上面講的場合來分析,最要害的就是第一種,每次都要轉來轉去的,很麻煩. 假如在weblogic下,可以在web.xml 設置一個參數,讓weblogic自動轉換,不過這個只能在weblogic下用了. 借鑒weblogic的思路,可以編寫Servlet Filter來實現.Filter是Servlet 2.3規范的內容.現在所有流行的服務器都應該支持. 代碼如下: /** * Filter class *
新聞熱點
疑難解答