奇怪的struts乱码

说来也奇怪,在同一个工程,所有的JSP页面编码都是UTF-8,数据库编码也是UTF-8,

struts.xml文件也设置了编码:<constant name="struts.i18n.encoding" value="UTF-8"></constant>

//截图如下

奇怪的struts乱码_第1张图片

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

action里面也设置了UTF-8编码:ServletActionContext.getRequest().setCharacterEncoding("UTF-8");

//截图如下

奇怪的struts乱码_第2张图片

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

按常理说,经过以上设置后,不应该有中文乱码才对,奇怪的是我有两个JSP页面,在添加页面输入中文,在action里面获取到的数据是乱码,

在另一个修改页面,提交数据后,在action里面获取到的是正常的中文,根本没有乱码,这是为什么呢?

经过对比两个文件,妈呀,原来是表单的提交方法不是post引起的,在修改页面表单的提交方式是post:

 <form action="yonghuAction" method="post">   ......</form>

添加页面的表单是这样写的:

 <form action="yonghuAction"">........</from>   //没有指明提交方法的类型,默认是GET,从而导致action获取到的是中文乱码,

这也能产生乱码,真是意想不到呀。

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

奇怪的struts乱码_第3张图片

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

您的十分满意是我追求的宗旨。

您的一点建议是我后续的动力。







你可能感兴趣的:(java,jsp,struts,中文乱码,乱码)