• SpringMVC整合FastJson:用"最快的json转换工具"替换SpringMVC的默认json转换


    一.环境说明

    • Windows 10 1709
    • Spring 4.3.12.RELEASE
    • FastJson 1.2.40
    • IDEA 2017.3
    • JDK 1.8.0_144

    二.开始配置

    在SpringmMVC的配置文件中加入如下代码 
    (目前最新版的配置是这样,以前版本的配置方式貌似不行了.)

     <mvc:annotation-driven>
            <!--不使用默认消息转换器 -->
            <mvc:message-converters register-defaults="false">
                <!--spring消息转换器 -->
                <bean class="org.springframework.http.converter.ByteArrayHttpMessageConverter"/>
                <bean class="org.springframework.http.converter.BufferedImageHttpMessageConverter"/>
    
                <!--解决@Responcebody中文乱码问题 -->
                <bean class="org.springframework.http.converter.StringHttpMessageConverter">
                    <constructor-arg value="UTF-8"/>
                </bean>
                <!--配合fastjson支持 -->
                <bean class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
                    <property name="defaultCharset" value="UTF-8"/>
                    <property name="supportedMediaTypes">
                        <list>
                            <!--顺序保持这样,避免IE下载出错 -->
                            <value>text/html;charset=UTF-8</value>
                            <value>application/json</value>
                        </list>
                    </property>
                    <property name="fastJsonConfig" ref="fastJsonConfig"/>
                </bean>
            </mvc:message-converters>
        </mvc:annotation-driven>
    
        <!--fastJsonConfig -->
        <bean id="fastJsonConfig" class="com.alibaba.fastjson.support.config.FastJsonConfig">
            <!--默认编码格式 -->
            <property name="charset" value="UTF-8"/>
    
            <property name="serializerFeatures">
                <list>
                    <value>WriteNullListAsEmpty</value>
                    <value>WriteDateUseDateFormat</value>
                    <value>PrettyFormat</value>
                    <value>WriteMapNullValue</value>
                    <value>WriteNullStringAsEmpty</value>
                    <value>WriteNullListAsEmpty</value>
                    <value>DisableCircularReferenceDetect</value>
                </list>
            </property>
    
        </bean>
        <!--fastjson支持配置结束 -->

    2017/11/23 
    Lucifer

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/cslucifer/article/details/78610515
  • 相关阅读:
    linux笔记
    restful课程凌杂知识点
    Django中间件执行流程
    restful知识点之二restframework视图
    restful知识点之一CBV
    可变长参数
    函数的重点内容
    文件的高级应用及修改的两种方式
    文件的三种打开方式及with管理文件上下文
    字符编码
  • 原文地址:https://www.cnblogs.com/xiaofengfeng/p/9261887.html
Copyright © 2020-2023  润新知