CXF(2.7.10) - RESTful Services, JSON Support

在 CXF(2.7.10) - RESTful Services 介绍了 REST 风格的 WebService 服务,数据传输是基于 XML 格式的。如果要基于 JSON 格式传输数据,@Produces("application/xml") 修改为 @Produces("application/json")。

package com.huey.demo.ws;

import java.util.List;

import javax.jws.WebService;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.PUT;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

import com.huey.demo.bean.Book;
import com.huey.demo.bean.ResultMsg;

@WebService
public interface BookService {

    @GET                                                    // 指定请求方式
    @Path("/book/{isbn}")                                   // 指定资源的 URI
    @Produces( { MediaType.APPLICATION_JSON  } )            // 指定请求/响应的媒体类型
    public Book getBook(@PathParam("isbn") String isbn);

    @GET
    @Path("/books")
    @Produces( { MediaType.APPLICATION_JSON  } )
    public List<Book> getBooks();

    @POST
    @Path("/book")
    @Produces( { MediaType.APPLICATION_JSON  } )
    public ResultMsg addBook(Book book);

    @PUT
    @Path("/book/{isbn}")
    @Produces( { MediaType.APPLICATION_JSON } )
    public ResultMsg updateBook(@PathParam("isbn") String isbn, Book book);

    @DELETE
    @Path("/book/{isbn}")
    @Produces( { MediaType.APPLICATION_JSON } )
    public ResultMsg deleteBook(@PathParam("isbn") String isbn);
}

测试。

a)

b)

c)

d)

e)

时间: 2024-12-31 07:34:21

CXF(2.7.10) - RESTful Services, JSON Support的相关文章

CXF(2.7.10) - RESTful Services

1. 定义 JavaBean.注意 @XmlRootElement 注解,作用是将 JavaBean 映射成 XML 元素. package com.huey.demo.bean; import javax.xml.bind.annotation.XmlRootElement; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @Data @NoArgsConstructo

CXF结合spring发布WS服务,含SOAP services、RESTful services

1.访问:http://localhost:8088/sniperWS/services/查看有哪些服务,包含Available SOAP services.Available RESTful services 2.客户端调用RESTful services:http://localhost:8088/sniperWS/services/address/getSuggestions.query 调用示例:$.ajax({    url: "http://ip:port/sniperWS/serv

Service Station - An Introduction To RESTful Services With WCF

Learning about REST An Abstract Example Why Should You Care about REST? WCF and REST WebGetAttribute and WebInvokeAttribute UriTemplate and UriTemplateTable WebHttpBinding and WebHttpBehavior WebServiceHost and WebServiceHostFactory Using the Example

Qt浅译:JSON Support in Qt(JSON只有六种数据类型)

JSON Support in Qt Qt5之后开始提供对处理JSON数据的支持,JSON是一种Interter数据交换的数据格式. JSON 用于存储结构化的数据,JSON有6种基本数据类型: bool double string array object null All keys in an object are strings, and an object cannot contain any duplicate keys. 在JSON的对象中,所有的键都是字符串,且不能包含重复的字符串

WebService框架CXF实战一发布RESTFul服务(七)

JAX-RS概述 JAX-RS是Java提供用于开发RESTful Web服务基于注解(annotation)的API.JAX-RS旨在定义一个统一的规范,使得Java程序员可以使用一套固定的接口来开发REST应用,避免了依赖第三方框架.同时JAX-RS使用POJO编程模型和基于注解的配置并集成JAXB,可以有效缩短REST应用的开发周期.JAX-RS只定义RESTful API,具体实现由第三方提供,如Jersey.Apache CXF等. JAX-RS包含近五十多个接口.注解和抽象类: ja

Ajax,restful/Rest JSON和JSONP

Ajax,restful/Rest JSON和JSONP之间的差异 Ajax – “异步Javascript和XML”. Ajax宽松地定义了一组技术,以帮助使Web应用程序提供更丰富的用户体验.屏幕的数据更新和刷新是使用javascript和xml(或json或只是一个正常的http post)异步完成.  JSON – “Javascript Object Notation”. JSON就像xml,它可以用来描述对象,但它更紧凑,并且具有实际的javascript的优势.以JSON表示的对象

使用Go构建RESTful的JSON API

原文地址http://thenewstack.io/make-a-restful-json-api-go/ 这篇文章不仅仅讨论如何使用Go构建RESTful的JSON API,同时也会讨论如何设计好的RESTful API.如果你曾经遭遇了未遵循良好设计的API,那么你最终将写烂代码来使用这些垃圾API.希望阅读这篇文章后,你能够对好的API应该是怎样的有更多的认识. JSON API是啥? 在JSON前,XML是一种主流的文本格式.笔者有幸XML和JSON都使用过,毫无疑问,JSON是明显的赢

CXF+Spring+Hibernate实现RESTful webservice服务端实例

1.RESTful API接口定义 /* * Copyright 2016-2017 WitPool.org All Rights Reserved. * * You may not use this file except in compliance with the License. * A copy of the License is located at * http://www.witpool.org/licenses * * or in the "license" file

10.C#操作JSON

1..NET对JSON的支持介绍 (1)操作Json的DLL介绍 .NET自身有System.Runtime.Serialization.dll与System.Web.Extensions.dll,使用这两个DLL可以把对象序列化和反序列化成Json数据.也可以使用第三方的Newtonsoft.Json.dll来操作Json数据,使用它会更方便的操作Json数据,其功能也跟强一些.下载地址:http://json.codeplex.com/ (2)使用System.Web.Extensions.