求助!为什么Html表单向Servlet提交中文时出现乱码啊?
我在Servlet中利用request.setCharacterEncoding("UTF-8");StringactionUrl=request.getServletP...
我在Servlet中利用
request.setCharacterEncoding("UTF-8");
String actionUrl = request.getServletPath();
if(actionUrl.equals("/register.action")){
//获取参数
String username = request.getParameter("username");
String realname = request.getParameter("realname");
String password = request.getParameter("password");
System.out.println(username);//打印出来的中文编程乱码了,向MySQL中插入失败。
P.S:我的my.ini中以及连接数据库的Bean中都是设置的UTF-8啊,网上说是把form设置成accept-charset="utf-8",我试了一下还是不行啊, 求大神指教。 展开
request.setCharacterEncoding("UTF-8");
String actionUrl = request.getServletPath();
if(actionUrl.equals("/register.action")){
//获取参数
String username = request.getParameter("username");
String realname = request.getParameter("realname");
String password = request.getParameter("password");
System.out.println(username);//打印出来的中文编程乱码了,向MySQL中插入失败。
P.S:我的my.ini中以及连接数据库的Bean中都是设置的UTF-8啊,网上说是把form设置成accept-charset="utf-8",我试了一下还是不行啊, 求大神指教。 展开
1个回答
展开全部
将request.setCharacterEncoding("UTF-8");
换成request.setCharacterEncoding("GBK");试试。
如果管用的话,最好使用filter来做这个。
换成request.setCharacterEncoding("GBK");试试。
如果管用的话,最好使用filter来做这个。
更多追问追答
追问
这个不行啊。@shafferw"最好使用filter来做这个。"怎么写呢?
追答
是request.setCharacterEncoding("GBK")不管用?
可以试试在html中也把编码格式改为"GBK"。
或者在servlet中转一下 new String(username .getBytes("ISO-8859-1"),"GBK");
new String(username .getBytes("UTF-8"),"GBK");
看看哪个能正常。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询