程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Java Spring MVC UTF-8编码大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决Java Spring MVC UTF-8编码?

开发过程中遇到Java Spring MVC UTF-8编码的问题如何解决?下面主要结合日常开发的经验,给出你关于Java Spring MVC UTF-8编码的解决方法建议,希望对你解决Java Spring MVC UTF-8编码有所启发或帮助;

好的,我发现了编码问题的原因。

问题出在我的构建过程中。我没有告诉pom.xml文件中的Maven 使用UTF-8编码来构建项目。因此,Maven刚从我的系统R_353_11845@acRoman中获取了默认编码,并使用MacRoman编码进行了构建。

幸运的是,Maven在构建项目时就向你发出警告(但是,由于所有其他消息,该警告很有可能很快从屏幕上消失)。

这是你需要在pom.xml文件中设置的属性:

<propertIEs>
    <project.build.sourceEnCoding>UTF-8</project.build.sourceEnCoding>
    ...
</propertIEs>

谢谢大家的帮助。没有你们,我将无法解决这个问题!

请务必注册Spring的CharacterEnCodingFilterweb.xml(必须是该文件中的第一个过滤器)。

<filter>  
    <filter-name>enCodingFilter</filter-name>  
    <filter-class>org.springframework.web.filter.CharacterEnCodingFilter</filter-class>  
    <init-param>  
       <param-name>enCoding</param-name>  
       <param-value>UTF-8</param-value>  
    </init-param>  
    <init-param>  
       <param-name>forceEnCoding</param-name>  
       <param-value>true</param-value>  
    </init-param>  
</filter>  
<filter-mapPing>  
    <filter-name>enCodingFilter</filter-name>  
    <url-pattern>/*</url-pattern>  
</filter-mapPing> 

如果你是在tomcat你可能没有设置URIEnCoding你的server.xml。如果你未将其设置为UTF-8,它将无法使用。绝对保持CharacterEnCodingFilter。不过,这里有一个简洁的清单。它一定会指导你完成这项工作。

解决方法

目前,我正在尝试开始使用Spring MVC。在尝试时,我遇到了编码问题。

我想在我的JSP页面上显示UTF-8字符,所以我在ModelAndView中添加了一个带有UTF-8字符的字符串。看起来像这样

@Controller
public class HomeController {

    private static final Logger logger = LoggerFactory.getLogger(HomeController.class);

    @requestMapping(value="/",method=requestMethod.GET)
    public ModelAndView home() {
        logger.info("Welcome home!");
        return new ModelAndView("home","utftest","ölm");
    }

}

在JSP页面上,我只想显示具有UTF-8字符的字符串,如下所示:

<%@ page language="java" pageEncoding="UTF-8"%>
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page session="false" %>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Home</title>
</head>
<body>
    <h1>Hello world!</h1>
    <p><c:out value="ö" /></p>
    <p><c:out value="${utftest}"></c:out></p>
</body>
</html>

结果,我得到以下结果:

Hello world!

ö

ölm

请注意,下面的代码<c:out value="ö" />显示没有编码错误。我还在Springsource Tool Suite中将默认编码设置为UTF-8,但仍然遇到错误的字符。

编辑:

也许我应该提到我正在使用OS X 10.6的Mac。对于Spring开发,我使用Spring的Springsource工具套件(http://www.springsource.com/developer/sts)。希望这有助于找出我的设置出了什么问题。

编辑2:

多亏了McDwell,我才尝试在控制器中使用”\u00f6lm”而不是使用,”ölm”并且JSP页面上的编码问题也消失了。

这是否意味着我的.java文件使用错误的字符集编码?我在哪里可以在Eclipse中更改此设置?

谢谢。

大佬总结

以上是大佬教程为你收集整理的Java Spring MVC UTF-8编码全部内容,希望文章能够帮你解决Java Spring MVC UTF-8编码所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:Java