jsp教程 中 actionform中文亂碼問題解決方案
先我們來瞭解一下actionform
actionform概念
actionform用於封裝使用者的請求參數,而請求參數是通過jsp頁面的表單域傳遞過來的。因此應 保證actionform的參數,與表單域的名字相同。
編輯本段actionform配置
所有的actionform都被配置在struts-config.xm l檔案中,該檔案包括了一個form-beans的元素, 該元素內定義了所有actionform,每個actionform對應一個form-bean元素。
jsp頁面接收actionform的屬性時,如果輸入的是中文,那麼在actionform接收後會是亂碼
解決方案有2個:
.在action類中解決,這個我試過,不可行
.在actionform中解決,這個我試過,可行,而且很方便
在actionform中的reset方法中加入如下代碼即可,可輸出英文或中文
view sourceprint?
public void reset(actionmapping mapping, https教程ervletrequest request) {
try {
request.setcharacterencoding("gbk");
} catch (exception e) {
// todo: handle exception
}
}
那麼在action就可以輸出中文的屬性了
view sourceprint?
public actionforward execute(actionmapping mapping, actionform form,
httpservletrequest request, httpservletresponse response) {
personalform personalform = (personalform) form;// todo auto-generated method stub
system.out.println(personalform.getusername());
system.out.println(personalform.getpassword());
return mapping.findforward("step2");
}