SpringBoot开发REST API,数据格式化全局配置

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Iffie_01/article/details/82910433

开发REST API时,通常需要对日期等数据类型进行格式化,以FastJson为例,可以使用@JSONField注解对需要格式化的字段进行配置,也可以使用如下的全局配置类

配置类

import java.util.ArrayList;
import java.util.List;

import org.springframework.context.annotation.Configuration;
import org.springframework.http.MediaType;
import org.springframework.http.converter.HttpMessageConverter;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;

import com.alibaba.fastjson.serializer.SerializerFeature;
import com.alibaba.fastjson.support.config.FastJsonConfig;
import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;

/**
 * WebMvcConfig
 * @author: Iffie
 * @date: 2018年9月27日
 */
@Configuration
public class WebMvcConfig extends WebMvcConfigurerAdapter {
	
	  @Override
	  public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
	    super.configureMessageConverters(converters);
	    FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
	    FastJsonConfig fastJsonConfig = new FastJsonConfig();
	    fastJsonConfig.setSerializerFeatures(
	        SerializerFeature.WriteNullListAsEmpty,
	        SerializerFeature.WriteMapNullValue,
	        SerializerFeature.WriteNullStringAsEmpty
	    );
	    fastJsonConfig.setDateFormat("yyyy-MM-dd HH:mm:ss");
	    fastConverter.setFastJsonConfig(fastJsonConfig);
	    List<MediaType> supportedMediaTypes = new ArrayList<MediaType>();
	    supportedMediaTypes.add(MediaType.ALL);
	    fastConverter.setSupportedMediaTypes(supportedMediaTypes);
	    converters.add(fastConverter);
	  }  
}
展开阅读全文

用wcf 4.0 Rest开发 API

10-09

表象化状态转变(英文:Representational State Transfer,简称REST)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格。目前在三种主流的Web服务实现方案中,因为REST模式的Web服务与复杂的SOAP和XML-RPC对比来讲明显的更加简洁,越来越多的web服务开始采用REST风格设计和实现。例如,Amazon.com提供接近REST风格的Web服务进行图书查找;雅虎提供的Web服务也是REST风格的。rn rn[b]宗旨:[/b]rn REST 从资源的角度来观察整个网络,分布在各处的资源由URI确定,而客户端的应用通过URI来获取资源的表形。获得这些表形致使这些应用程序转变了其状态。随着不断获取资源的表形,客户端应用不断地在转变着其状态,所谓表形化的状态转变(Representational State Transfer)。rnrn[b]要点及标准: [/b]rn REST是一种设计风格而不是一个标准。REST通常基于使用HTTP,URI,和XML以及HTML这些现有的广泛流行的协议和标准。rnrn 资源是由URI来指定。rn 对资源的操作包括获取、创建、修改和删除资源,这些操作正好对应HTTP协议提供的GET、POST、PUT和DELETE方法。rn 通过操作资源的表形来操作资源。rn 资源的表现形式则是XML或者HTML,取决于是读者是机器还是人,消费web服务的客户软件还是web浏览器。当然也可以是任何其他的格式。rnrn[b]REST的要求:[/b]rn 客户端和服务器结构rn 连接协议具有无状态性rn 能够利用Cache机制增进性能rn 层次化的系统rn Code On Demand - Javascriptrnrn[b]关于状态:[/b]rnrn 应该注意区别应用的状态和连接协议的状态。REST对于连接的无状态性实际上要求每次在无状态的连接协议中传送的信息包含应用中所有的状态信息。rnrnrn 关于Rest的简介我就不在这多啰嗦了。有兴趣的朋友可以到以下连接去查看:rn [url=http://www.infoq.com/cn/articles/rest-introduction][/url]rn 星巴克咖啡Rest的案例:rn [url=http://www.infoq.com/cn/articles/webber-rest-workflow][/url]rnrn 用WCF 4.0构建REST Servicern [url=http://www.cnblogs.com/lanvige/archive/2011/05/19/1895654.html][/url]rn WCF 4.0--RESTFull WCF Service 开发的demorn [url=http://blog.csdn.net/fangxinggood/article/details/6261431][/url]rnrn 源代码在这就不粘上来了,上面的链接中详细的说明,在开发中需要下载 WCF REST Starter Kit ,下载地址:rn [url=http://aspnet.codeplex.com/releases/view/24644][/url]rn Json.Net的下载地址:rn [url=http://json.codeplex.com/releases/view/74287][/url] rn rn MSDN官网的WCF REST Develope Guidern [url=http://msdn.microsoft.com/zh-cn/library/ee391967.aspx][/url]rnrn rn rn 论坛

没有更多推荐了,返回首页