说来也奇怪,在同一个工程,所有的JSP页面编码都是UTF-8,数据库编码也是UTF-8,
struts.xml文件也设置了编码:<constant name="struts.i18n.encoding" value="UTF-8"></constant>
//截图如下
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
action里面也设置了UTF-8编码:ServletActionContext.getRequest().setCharacterEncoding("UTF-8");
//截图如下
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
按常理说,经过以上设置后,不应该有中文乱码才对,奇怪的是我有两个JSP页面,在添加页面输入中文,在action里面获取到的数据是乱码,
在另一个修改页面,提交数据后,在action里面获取到的是正常的中文,根本没有乱码,这是为什么呢?
经过对比两个文件,妈呀,原来是表单的提交方法不是post引起的,在修改页面表单的提交方式是post:
<form action="yonghuAction" method="post"> ......</form>
添加页面的表单是这样写的:
<form action="yonghuAction"">........</from> //没有指明提交方法的类型,默认是GET,从而导致action获取到的是中文乱码,
这也能产生乱码,真是意想不到呀。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
您的十分满意是我追求的宗旨。
您的一点建议是我后续的动力。