您的位置:首页 > 编程语言 > Java开发

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

2016-03-23 16:17 260 查看

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 : ‘(‘#index_regForm’).form({
url : ‘{pageContext.request.contextPath}/userController/reg.do’,

// dataType : ‘json’,

// contentType : ‘application/json;charset=UTF-8’,

success : function(data) {

var data=data = .parseJSON(data);

console.info(data);alert(data);
alert(data.message);

}

});

发现的问题:

通过之前的配置,发现在返回前台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

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

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’

});

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: