解决jsp( ä½ å¥)和Json(???)乱码问题

本文主要讨论了在使用jsp和Json时遇到的乱码问题。针对jsp中出现的ä½ å¥½é”™è¯¯乱码,提出了通过SpringMVC过滤器或者自定义过滤器的两种解决方案。对于Json的???乱码,提到了可以利用@RequestMaping的produces属性或在Spring MVC配置文件中设置StringHttpMessageConverter转换来处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题一 : 使用jsp时,出现 ä½ å¥½é”™è¯¯ 类似的乱码

解决方案一 : 可以使用SpringMVC提供的过滤器解决乱码问题

web.xml中配置

<filter>
   <filter-name>encoding</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>
</filter>
<filter-mapping>
   <filter-name>encoding</filter-name>
   <url-pattern>/*</url-pattern>
</filter-mapping>

解决方案二 : 也可以自己创建一个过滤器类,并在web.xml中注册!

public class EncodingFilter implements Filter {
    @Override
    public void init(FilterConfig filterConfig) throws ServletException {

    }

    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {

        servletRequest.setCharacterEncoding("utf-8");
        servletResponse.setCharacterEncoding("utf-8");

        filterChain.doFilter(servletRequest,servletResponse);
    }

    @Override
    public void destroy() {

    }
}
<filter>
        <filter-name>encoding2</filter-name>
        <!--过滤器类路径-->
        <filter-class>com.filter.EncodingFilter</filter-class>
</filter>
<filter-mapping>
        <filter-name>encoding2</filter-name>
        <url-pattern>/*</url-pattern>
</filter-mapping>

问题二 : 在使用Json时会出现 ??? 乱码

解决方案一 : 通过@RequestMaping的produces属性来实现

//value:指定请求的实际地址
//produces:指定响应体返回类型和编码
@RequestMapping(value = "/json1",produces = "application/json;charset=utf-8")

解决方案二 : 可以在springmvc的配置文件上添加一段消息StringHttpMessageConverter转换配置!

<mvc:annotation-driven>
    <mvc:message-converters register-defaults="true">
        <bean class="org.springframework.http.converter.StringHttpMessageConverter">
            <constructor-arg value="UTF-8"/>
        </bean>
        <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
            <property name="objectMapper">
                <bean class="org.springframework.http.converter.json.Jackson2ObjectMapperFactoryBean">
                    <property name="failOnEmptyBeans" value="false"/>
                </bean>
            </property>
        </bean>
    </mvc:message-converters>
</mvc:annotation-driven>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值