在Spring MVC中处理POST请求中的外语

时间:2016-03-23 10:27:07

标签: spring spring-mvc encoding utf-8 character-encoding

我正在尝试在Spring MVC应用程序中处理DB中保存的外语单词,但它没有得到正确保存。我在Controller中使用logger来检查POST请求中收到的值,它没有显示输入的确切值。

我正在输入“Україна”并且在控制器中使用request.getParameter()显示出类似'╨г╨║╤?╨░╤?╨╜╨░'的奇怪内容。

我发现如果我在enctype="multipart/form-data"标记中添加<form>,那么由于ApplicationContext,java file

中添加了以下代码,它工作正常
@Bean(name = "multipartResolver")
 public CommonsMultipartResolver getMultipartResolver(){
  CommonsMultipartResolver commonsMultipartResolver = new CommonsMultipartResolver();
  commonsMultipartResolver.setMaxUploadSize(25000000);
  commonsMultipartResolver.setDefaultEncoding("utf-8");
  return commonsMultipartResolver;
 }

是否可以为非多部分请求添加setDefaultEncoding("utf-8")

提前感谢您的帮助。如果我的问题不明确,请告诉我。

1 个答案:

答案 0 :(得分:0)

我已在服务器中添加默认编码解决了此问题。当我使用wildfly时,在<servlet-container name="default">标记的standalone.xml文件中添加了“default-encoding =”UTF-8“”。