springmvc中配置默认的注解映射支持

1、jeesite中springmvc配置默认的注解映射支持配置文件

<!-- 默认的注解映射的支持,org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping -->
<mvc:annotation-driven content-negotiation-manager="contentNegotiationManager">
    <mvc:message-converters register-defaults="true">
        <!-- 将StringHttpMessageConverter的默认编码设为UTF-8 -->
        <bean class="org.springframework.http.converter.StringHttpMessageConverter">
            <constructor-arg value="UTF-8" />
        </bean>
        '''
        <!-- 将Jackson2HttpMessageConverter的默认格式化输出为false -->
        '''
        <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
            <property name="supportedMediaTypes">
                <list><value>application/json;charset=UTF-8</value></list>
            </property>
            <property name="prettyPrint" value="false"/>
            <property name="objectMapper">  
                <bean class="com.thinkgem.jeesite.common.mapper.JsonMapper"></bean>  
            </property> 
        </bean>
        <!-- 使用XML格式输出数据 -->
        <bean class="org.springframework.http.converter.xml.MarshallingHttpMessageConverter">
            <constructor-arg>
                <bean class="org.springframework.oxm.xstream.XStreamMarshaller">
                    <property name="streamDriver">
                        <bean class="com.thoughtworks.xstream.io.xml.StaxDriver"/>
                    </property>
                    <property name="annotatedClasses">
                        <list>
                            <value>com.thinkgem.jeesite.common.persistence.BaseEntity</value>
                            <value>com.thinkgem.jeesite.common.supcan.treelist.TreeList</value>
                            <value>com.thinkgem.jeesite.common.supcan.treelist.cols.Col</value>
                            <value>com.thinkgem.jeesite.common.supcan.treelist.cols.Group</value>
                        </list>
                    </property>
                </bean>
            </constructor-arg>
            <property name="supportedMediaTypes" value="application/xml"></property>
        </bean>
    </mvc:message-converters>
</mvc:annotation-driven>

2、以下是别人未配置json默认字符出现的错误情况

注册的form表单提交:
//初始化form
(‘#index_regForm’).form({  
                 url : ‘
{pageContext.request.contextPath}/userController/reg.do’,
// dataType : ‘json’,
// contentType : ‘application/json;charset=UTF-8’,
success : function(data) {
var data= .parseJSON(data);
console.info( data);alert( data.message);
}
});

  1. 发现的问题:
    通过之前的配置,发现在返回前台json的时候,通过
    $.parseJSON(data);
    无法解析为json数据,以致无法正常显示。
    通过N种方法尝试,终于使firefox好用了,但是在ie下又出现乱码。。
    最后终于通过修改spring-mvc.xml改好了》》》》》》》》修改如下:(注意替换之前的写法。)










    application/json;charset=UTF-8















    com.thinkgem.jeesite.common.persistence.BaseEntity
    com.thinkgem.jeesite.common.supcan.treelist.TreeList
    com.thinkgem.jeesite.common.supcan.treelist.cols.Col
    com.thinkgem.jeesite.common.supcan.treelist.cols.Group

















  2. 增加前台页面的返回提示:

                success : function(data) { 
    var $data = $.parseJSON(data);
    console.info($data.success);
    console.info($data.message);
    if ($data.success) {
    $(‘#index_regDialog’).dialog(‘close’);
    }
    $.messager.show({
    title : ‘提示’,
    msg : $data.message,
    timeout : 5000,
    showType : ‘slide’
    });
    }

猜你喜欢

转载自blog.csdn.net/u013130967/article/details/50964200
今日推荐