- 浏览: 563576 次
- 性别:
- 来自: 长沙
文章分类
- 全部博客 (145)
- apache-struts (3)
- apache-shiro (4)
- apache-wicket (1)
- spring (34)
- spring-data-jpa (2)
- spring-mvc (20)
- spring-security (1)
- spring-webflow (1)
- hibernate (2)
- mongodb (1)
- ibatis (5)
- mysql (4)
- 开源组件 (18)
- java (3)
- maven (7)
- jBPM (1)
- EJB (1)
- JMS (2)
- servlet / jsp (9)
- javascript / jquery (10)
- 工作技巧 (12)
- ubuntu (6)
- bootstrap (10)
- javaee (1)
- 他山石 (7)
- jetbrick (1)
最新评论
-
yubao2008:
[size=x-small]为什么我也这样试了, 就是没有生效 ...
javax.servlet.http.HttpServletResponse 得到 status_code -
chenrl:
...
SpringMVC杂记(十五) spring-mvc controller 的切面 -
LONGTENGLONG:
你好,这样配置的,得到的集合为空,是什么原因?
apache-shiro杂记(一) 统计在线用户数目 -
xiafengfeiwu:
[flash=200,200][url]引用[/url][/f ...
apache-shiro 学习笔记 -
3108493554:
你好 ,有些问题想请教下,加下我qq310849354,你这上 ...
SpringMVC杂记(十二) 自定义Interceptor从Active Directory得到域信息
1) 国产开源软件要支持的
2) spring没有提供相应的HttpMessageConverter可以自己写一个。
3) 配置
<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.1.22</version> </dependency>
2) spring没有提供相应的HttpMessageConverter可以自己写一个。
package com.alibaba.fastjson.spring.support; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.OutputStream; import java.nio.charset.Charset; import org.springframework.http.HttpInputMessage; import org.springframework.http.HttpOutputMessage; import org.springframework.http.MediaType; import org.springframework.http.converter.AbstractHttpMessageConverter; import org.springframework.http.converter.HttpMessageNotReadableException; import org.springframework.http.converter.HttpMessageNotWritableException; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.serializer.SerializerFeature; public class MappingFastJsonHttpMessageConverter extends AbstractHttpMessageConverter<Object> { public static final Charset DEFAULT_CHARSET = Charset.forName("UTF-8"); // fastjson特性参数 private SerializerFeature[] serializerFeature; public SerializerFeature[] getSerializerFeature() { return serializerFeature; } public void setSerializerFeature(SerializerFeature[] serializerFeature) { this.serializerFeature = serializerFeature; } public MappingFastJsonHttpMessageConverter() { super(new MediaType("application", "json", DEFAULT_CHARSET)); } @Override public boolean canRead(Class<?> clazz, MediaType mediaType) { // JavaType javaType = getJavaType(clazz); // return this.objectMapper.canDeserialize(javaType) && // canRead(mediaType); return true; } @Override public boolean canWrite(Class<?> clazz, MediaType mediaType) { // return this.objectMapper.canSerialize(clazz) && canWrite(mediaType); return true; } @Override protected boolean supports(Class<?> clazz) { // should not be called, since we override canRead/Write instead throw new UnsupportedOperationException(); } @Override protected Object readInternal(Class<?> clazz, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException { ByteArrayOutputStream baos = new ByteArrayOutputStream(); int i; while ((i = inputMessage.getBody().read()) != -1) { baos.write(i); } return JSON.parseArray(baos.toString(), clazz); } @Override protected void writeInternal(Object o, HttpOutputMessage outputMessage) throws IOException, HttpMessageNotWritableException { String jsonString = JSON.toJSONString(o, serializerFeature); OutputStream out = outputMessage.getBody(); out.write(jsonString.getBytes(DEFAULT_CHARSET)); out.flush(); } }
3) 配置
<bean class="com.alibaba.fastjson.spring.support.MappingFastJsonHttpMessageConverter"> <property name="supportedMediaTypes" value="application/json" /> <property name="serializerFeature"> <array> <value>WriteMapNullValue</value> <value>QuoteFieldNames</value> </array> </property> </bean>
评论
7 楼
jacking124
2013-04-30
不错的,晚上看到了,谢谢了!!
6 楼
billson
2013-02-07
Jstar
试一试把
放在 <mvc:annotation-driven> 里面
如下:
试一试把
<bean class="com.alibaba.fastjson.spring.support.MappingFastJsonHttpMessageConverter"> <property name="supportedMediaTypes" value="application/json" /> <property name="serializerFeature"> <array> <value>WriteMapNullValue</value> <value>QuoteFieldNames</value> </array> </property> </bean>
放在 <mvc:annotation-driven> 里面
如下:
<mvc:annotation-driven> <mvc:message-converters register-defaults="true" > <bean class="com.alibaba.fastjson.spring.support.MappingFastJsonHttpMessageConverter"> <property name="supportedMediaTypes" value="application/json" /> <property name="serializerFeature"> <array> <value>WriteMapNullValue</value> <value>QuoteFieldNames</value> </array> </property> </bean> </mvc:message-converters> </mvc:annotation-driven>
5 楼
Jstar
2013-01-09
Hello ,我又来了,我按照你这个来做,返回的状态是406(表示无法使用请求的内容特性来响应请求的网页),而不是200,下面是我的详细说明,麻烦帮忙看看,谢谢
http://www.oschina.net/question/865078_87038
http://www.oschina.net/question/865078_87038
4 楼
yingzhor
2012-08-16
一般只有使用到ajax技术的时候才通过后端返回json对象。
在前端json对象就是一个javascript对象。 直接取其属性即可。
在前端json对象就是一个javascript对象。 直接取其属性即可。
3 楼
Jstar
2012-08-16
THANKS~~~~~~
另外我想问下,返回的JSON在前端页面是怎样绑定, 用datalink? 有没有例子。
另外我想问下,返回的JSON在前端页面是怎样绑定, 用datalink? 有没有例子。
2 楼
yingzhor
2012-08-15
@ResponseBody 标注加到Controller 方法上返回的即为json
不加,那就和普通的Controller 没有什么不同。
如:
返回String的是逻辑视图名。
ModelAndView 模型和逻辑视图一起返回。
不加,那就和普通的Controller 没有什么不同。
如:
返回String的是逻辑视图名。
ModelAndView 模型和逻辑视图一起返回。
1 楼
Jstar
2012-08-15
配置好这个后在controller里面还需要加什么其他注解了么,如果有些方法是返回json的,有些又不想返回json的该怎么做。
发表评论
-
SpringMVC杂记(十八) ServletRequestAttributes的应用
2014-02-28 12:38 14227看了一下SpringMVC的源代码,原来SpringMVC也提 ... -
SpringMVC杂记(十七) HandlerMethodArgumentResolver接口应用example
2014-01-24 15:29 12211自从spring3.1 开始就有了这个接口,可以为@Reque ... -
SpringWebflow杂记(一) 框架初探,与SpringMVC的集成
2013-10-23 17:18 1718今日研究了一下SpringWebFlow这个项目,作为Spri ... -
SpringMVC杂记(十六) spring-mvc 与 openid4java
2013-10-12 15:25 3879SpringMVC杂记(十六) spring-mvc 与 op ... -
SpringMVC杂记(十五) spring-mvc controller 的切面
2013-08-01 19:42 6148SpringMVC杂记(十五) spring-mvc cont ... -
Spring集成CXF
2013-06-24 15:53 1575Spring集成CXF 零) jar依赖 <dep ... -
SpringMVC杂记(十四) Ajax方式的JSR303认证
2013-06-13 07:29 4527自己定义一个Exception,用来表示数据绑定失败 im ... -
SpringMVC杂记(十三) 使用FreeMarker作为视图层
2013-06-09 11:55 3406实在没什么好说的,直接上配置文件好了 <bean i ... -
SpringMVC杂记(十二) 自定义Interceptor从Active Directory得到域信息
2013-06-04 14:04 3209一)最近项目中要求实现Web应用的SSO(Single Sig ... -
通过spring,javamail,和freemarker集成发送HTML方式的电子邮件
2013-05-30 14:02 4876一) 现在项目中用的javamail和org.springfr ... -
SpringMVC杂记(十一) 使用Excel视图
2013-04-06 16:06 6633SpringMVC杂记(十一) 使用Excel视图 一) 其 ... -
Spring集成junit
2012-12-24 10:43 1510package junit; import org. ... -
BootstrapPlugin - daterangepicker 使用笔记
2012-11-13 12:17 21083BootstrapPlugin - daterangepick ... -
SpringMVC杂记(十) 验证码生成
2012-11-06 10:18 2789以前写过一篇关于这个的博客,现在用SpringMVC了,重写一 ... -
SpringMVC杂记(九) 模拟其他类型(非GET,POST)的请求
2012-10-22 10:49 26981) 以前一个小兄弟问我,SpringMVC是否可以使用很多浏 ... -
ActiveMQ学习笔记(二) JMS与Spring
2012-06-24 10:21 7438上文可见,JMS Native API使用起来不是特别方便。好 ... -
我的SpringSecurity实践
2012-04-08 07:49 8988我的SpringSecurity实践 (一) 数据库与实体类 ... -
SpringMVC杂记(七) Jackson与Hibernate LazyLoding无法正常工作解决办法
2012-03-21 13:35 7064SpringMVC杂记(七) Jackson与Hibernat ... -
SpringMVC杂记(六) 下载文件
2012-03-21 09:04 4287SpringMVC杂记(六) 下载文件 1) jar依赖 ... -
SpringMVC杂记(五) JSR303数据验证
2012-03-16 16:30 12441SpringMVC杂记(五) JSR303数据验证 1) 首 ...
相关推荐
Fastjson 则是阿里巴巴开源的一个高性能的 JSON 解析和生成库,它可以快速地将 Java 对象转换为 JSON 字符串,也可以将 JSON 字符串转换为 Java 对象。 在"springmvc+fastjson demo"中,这个项目演示了如何在 ...
Fastjson 是阿里巴巴开源的一个高性能的JSON库,它能够方便地将Java对象转换为JSON字符串,也可以将JSON内容解析为Java对象。在Spring MVC中集成Fastjson,可以极大地提高应用在处理数据交换时的效率和便捷性。 在...
开发工具采用IDEA,用maven构建的项目,框架采用SpringMVC,数据库采用mysql与mybatis配合,数据格式采用阿里巴巴工具fastJson,数据源druid,另外还添加了resteasy中的功能
Fastjson是阿里巴巴开发的一个Java语言编写的高性能功能完备的JSON库。它不仅支持将Java对象转换为JSON字符串,也可以将JSON内容解析为Java对象,这在数据交换和序列化场景中非常实用。Fastjson以其高效的性能和简洁...
在本篇博文中,我们将深入探讨SpringMVC框架中的向导型Controller的实现,这是SpringMVC 3.1.1版本的一个重要特性。向导型Controller通常用于处理多步骤的用户交互流程,如购物车结账、用户注册等,它能够引导用户...
在本篇《SpringMVC杂记(五) JSR303数据验证》中,我们将深入探讨SpringMVC框架如何集成并使用JSR303(JavaBeans Validation)来进行数据验证,这是一种强大的验证机制,可以确保应用程序接收到的数据是合法且符合...
SpringMVC 配合 Fastjson 的内存马利用与分析 SpringMVC 是一种基于 Java 的实现了 Web MVC 设计模式的请求驱动类型的轻量级 Web 框架,即使 用了 MVC 架构模式的思想,将 web 层进 行职责解耦,基于请求驱动指的...
FastJson是阿里巴巴开源的一个高性能的JSON库,它可以用于序列化和反序列化Java对象,非常适合于处理API的输入输出数据。本文将详细介绍如何在Spring MVC项目中整合FastJson,实现RESTful风格的API。 首先,我们...
FastJson是阿里巴巴开源的一款高性能的JSON处理工具,广泛应用于Java应用程序中,特别是在Spring MVC框架中。它支持各种JSON操作,例如序列化和反序列化对象以及转换数据格式。然而,在处理复杂对象关系时,尤其是在...
在本教程中,我们将深入探讨如何使用SpringMVC框架与阿里云对象存储服务(OSS)集成,实现在JavaWeb应用中上传图片文件。阿里云OSS是一种安全、可靠的云存储服务,适合存储大量数据,如图片、视频、文档等。而...
在开发Web应用时,Spring MVC框架常用于构建后端服务,而FastJson是阿里巴巴提供的一款高效、功能强大的JSON处理库。本教程将详细介绍如何在Spring MVC项目中整合FastJson,以便实现RESTful风格的API。 首先,理解...
7. **Fastjson**:Fastjson是阿里巴巴的一个高性能的JSON库,它能将Java对象转换为JSON字符串,也能将JSON内容转换为Java对象。在处理JSON格式的数据时,Fastjson的性能表现优秀,且使用简便。 这个项目的整合意味...
**阿里Druid数据源**:Druid是阿里巴巴开源的一个高性能、可扩展的Java数据库连接池。它除了具备基本的数据源功能外,还提供了强大的监控和扩展能力,如SQL解析、SQL执行计划分析、连接池健康检查等。使用Druid可以...
Fastjson是阿里巴巴开源的一个高性能的JSON库,它能够将Java对象转换成JSON字符串,也可以将JSON内容解析为Java对象。在Web开发中,Fastjson常用于前后端数据交换,因为它速度快,易用性好。 这个项目配置集成了...
Dubbo 是阿里巴巴开源的一款高性能、轻量级的Java服务治理框架,它专注于服务调用、注册、监控和服务发现。Dubbo的核心功能包括服务提供者(Provider)、服务消费者(Consumer)、注册中心(Registry)和监控中心...
接下来,在Spring MVC的配置文件(如`springMVC.xml`)中,替换原来的`FastJsonHttpMessageConverter`实例为我们的自定义类`JsonHttpMessageConverter`,并设置支持的媒体类型及序列化特性: ```xml <!-- 替换...
**SpringMVC详解** SpringMVC是Spring框架的一部分,它是一个模型-视图-控制器(MVC)架构的实现,用于构建Web应用程序。SpringMVC通过解耦控制器、业务逻辑和服务层,使得开发者可以更专注于应用程序的核心功能。...
本教程将深入探讨 SpringMVC 的核心功能和使用方法。 ### 第 1 章 SpringMVC 概述 SpringMVC 旨在简化 Web 开发,通过解耦控制器、服务、业务逻辑和视图,提高代码的可测试性和可维护性。其核心组件包括 ...
2. Fastjson:Fastjson是阿里巴巴提供的一款Java语言编写的高性能功能完备的JSON库。它可以用来将Java对象转换为JSON字符串,也可以将JSON内容转换为对应的Java对象。Fastjson的性能优异,且使用简单,非常适合于...