request作爲前後臺交換的橋樑,有重要作用。
request常用的方法有讀參數:public String getParameter(String paramName);讀取屬性public Object getAttribute(String
paramName);和讀session屬性public Object getSessionAttribute(String name);
作爲一般的規則:頁面傳遞的參數用getParameter,後臺只能讀;而屬性是後臺操作使用的,一般是先寫後讀。
前臺的數據提交也有兩種方式普通方式和多數據流(multipart/form-data)方式。如果涉及到加密,有可能還有其它的request對象。
不僅如此,還有中文轉換問題,甚至選用不同的應用服務器也有可能編碼處理的方式不同。
因此這麼多問題如果需要開發人員來考慮,那麼程序的複雜度會增加很多,而且一旦改變環境,那代價是相當大!我們甚至不知道需要改多
少程序,只能通過調試逐步修改。因此必須通過一種方式,把各種差異屏蔽在底層。開發人員只需要按照規範寫程序,環境的改變與他們開發的代碼無關。
上面這些只是最基本的要求,如果想做得完善一點,還要考慮開發人員使用方便,除了重載一些get、set方法,還需要考慮一些多行數據讀入的情況以及用於控制的隱含數據的讀入等。
其它重要的方法:
public String[] getParameters(String paramName)
public String getParameter(String paramName, int indexItem)
/**
* 取指定的參數 格式【參數名_順序】
* @param paramName 參數名
* @param indexItem 順序
* @return 指定的參數對應的值
*/
public String getParameter(String paramName, int indexItem)
public Record getRecord(QueryFieldGroupInterface fieldGroup) throws Exception
/**
* 通過fieldGroup直接構建Record
* @param indexItem 順序
* @param fieldGroup 數據結構
* @return 對應的Record,不存在的值填null
* @throws java.lang.Exception
*/
public Record getRecord(QueryFieldGroupInterface fieldGroup, int indexItem) throws Exception
/**
* 設置轉換字符集的Reader
* @param reader 轉換字符集的Reader
*/
public void setReader(CharSetReader reader)