Java Web開發中,有許多共通的問題,是開發人員在開發過程中一定會遇到的,需要處理的問題:
1. 亂碼問題
為何會出現亂碼問題?既然有亂碼問題,肯定是由于編碼設置的不一致導致的。在Web開發 過程中,涉及以下一些編碼設置,客戶端參數的編碼設置,Web服務器的編碼設置,服務器端應用程序的編碼設置,數據庫的編碼設置等。只要這四處的編碼設置 有不相同的,就可能會出現亂碼問題。開發人員在進行開發之前,不防先了解一下這四個編碼在哪里設置,當前自己的項目設置是怎么樣的,這樣就可以很好的避免 編碼問題。
2. 權限控制
對于一個Java Web系統,不是所有的頁面與功能都允許所有的用戶訪問的,這樣就需要對用戶能訪問哪些頁面進行控制了。一般的Java Web系統,都需要進行權限控制。進行權限控制的方法有很多,以前看到有不少項目直接在程序里寫權限控制的代碼,這樣的弊端是顯而易見的,太不利于擴展 了,只要有任何的修改,都需要改動相當的代碼,一是容易出錯,二是修改的代價大。一個比較好的想法是基于AOP的思想,使用攔截器來進行權限控制,當然前 提是系統要配置一定的數據庫結構,如用戶-角色-權限表這樣的表結構。當然,目前有不少的權限控制開源框架如acegi
3. 參數驗證
All Input Is Evil。對于輸入參數的驗證是少不了的。對于參數的驗證,有客戶端驗證與服務器端驗證,一般來說,能夠在客戶端進行驗證的,優先考慮客戶端驗證以減少服 務器端壓力。現在有許多的Javascript框架可以很好的完成這一工作。如Jquery Validation插件。
4. 異常處理
應該說對于每個系統來說,異常處理都是很重要的。但在B/S結構的環境中,異常就顯得更為重要,一個設計良好的異常處理框架可以減少很多的代碼編寫工作。
5. 參數傳遞
在B/S結構,基于HTTP來完成通信,每一次的客戶端與服務器端的交互都是一次參數傳 遞的過程??刂茀档膫鬟f過程就顯得很重要了。要清楚的知道每一次的B/S的交互,需要傳遞哪些參數,哪些參數是合法的,哪些參數是不合法的,是通過 GET方式還是通過POST方式,還是通過URL鏈接的方式。
6. Ajax
現在的Java Web系統,不使用Ajax技術是不可能的了。Ajax實在是一項不錯的技術,不刷新頁面而完成與服務器端的通信,它使得基于B/S的結構功能更強大了, 許多傳統的Web應用程序所無法完成的功能現在大都可以用B/S架構來實現。對于Ajax現在已經有很多成熟的Javascript框架可以使用。首推 jQuery,其提供的Ajax功能簡單而實用。
7. 客戶端Javascript技術
客戶端技術有很多,Javascript應該說是功能最強大、應用最廣泛的一個了。用好Javascript,在系統設計時多考慮客戶端的實現方式,可以很好的輔助進行服務器端的功能設計。優秀的Javascript框架還是推薦jQuery,其功能簡單、實用而強大。