学习javaweb 发现在servelet中输出表单提交的text值,会出现乱码。
实验之后似乎明白了
首先在servlet 中添加了setcharacterencoding,发现并没有卵用
我在表单中没有定义method,看网址栏貌似默认执行了get
于是把method 改成post ,果然没有乱码了。
于是得出结论,setcharacerencoding 仅仅对于 dopost 方法有用,在doget方法中是无用的
之后在表单中提交中文和英文混杂的text发现网址栏中 英文正确传值,中文换成了某种编码,又考虑到控制台输出的是问号,感觉应该是“iso-8859-1”
尝试在doget中将传进的值用“iso-8859-1”强制解码
之后再用“utf-8”强制编码
果然不再乱码
那么综上所述,post中可以用setcharacterencoding 解决乱码问题
而get 中可以通过强制编码解决
本文探讨了在Java Web开发中使用Servlet处理表单提交时遇到的乱码问题。通过对比GET与POST请求的不同处理方式,阐述了如何有效解决中文字符的编码问题。
2316

被折叠的 条评论
为什么被折叠?



