春季休息ful 网页服务XML示例
网页服务教程内容:
- 网络服务介绍
- 网页服务面试问题
- SOAP 网页服务介绍
- RESTful 网页服务介绍
- SOAP和REST 网页服务之间的区别
- 使用Eclipse的Java中的SOAP 网页服务示例
- JAX-WS 网页服务Eclipse教程
- 在Tomcat上部署JAX-WS 网页服务
- 使用Jersey在Java(JAX-RS)中创建RESTful 网页服务
- 使用球衣的RESTful 网页服务JAXRS JSON示例
- 使用球衣的RESTful 网页服务JAXRS CRUD示例
- 使用$ http的AngularJS RESTful 网页服务JAXRS CRUD示例
- RESTful 网页服务(JAX-RS)@QueryParam示例
- 春季休息简单示例
- 春季休息 JSON示例
- 春季休息 XML示例
- 春季休息 CRUD示例
在上一篇文章中,我们创建了一个非常简单的 春季休息ful 网页服务 返回json。在本文中,我们将看到竞彩篮球分析 Restful 网页服务,它将返回xml作为示例。
这是创建简单的竞彩篮球分析 Restful 网页服务的步骤,这些服务将返回xml。
1) 创建一个 在Eclipse中使用Maven的动态Web项目.
pom.xml将如下所示:
pom.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
<项目 XML文件ns="http://maven.apache.org/POM/4.0.0" XML文件ns:si="http://www.w3.org/2001/XMLSchema-instance" si:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.Arpit.爪哇2blog</groupId> <artifactId>弹簧RestfulWebServicesWithJSONExample</artifactId> <打包>战争</打包> <版>0.0.1-快照</版> <名称>弹簧RestfulWebServicesWithJSONExample 马文 网络应用</名称> <网址>http://maven.apache.org</url> <依存关系> <依赖> <groupId>unit</groupId> <artifactId>unit</artifactId> <版>3.8.1</版> <范围>测试</范围> </依赖> <依赖> <groupId>爪哇x.小服务程序</groupId> <artifactId>爪哇x.小服务程序-api</artifactId> <版>3.1.0</版> </依赖> <依赖> <groupId>组织.弹簧框架</groupId> <artifactId>弹簧-核心</artifactId> <版>${弹簧.版}</版> </依赖> <依赖> <groupId>组织.弹簧框架</groupId> <artifactId>弹簧-网路mvc</artifactId> <版>${弹簧.版}</版> </依赖> </依存关系> <建立> <finalName>弹簧RestfulWebServicesWithJSONExample</finalName> <外挂程式> <插入> <groupId>组织.阿帕奇.专家.外挂程式</groupId> <artifactId>专家-编译器-插入</artifactId> <版>3.1</版> <组态> <资源>${杰克.版}</资源> <目标>${杰克.版}</目标> </组态> </插入> </外挂程式> </建立> <属性> <弹簧.版>4.2.1。发布</弹簧.版> <杰克.版>1.7</杰克.版> </属性> </项目> |
弹簧应用程序配置:
3) 如下更改web.xml:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
<!DOCTYPE 网路-应用程式 上市 “-// Sun Microsystems,Inc.//DTD 网页应用程序2.3 // EN” "http://java.sun.com/dtd/web-app_2_3.dtd" > <网路-应用程式> <显示-名称>原型 已建立 网页 应用</显示-名称> <小服务程序> <小服务程序-名称>弹簧座</小服务程序-名称> <小服务程序-类> 组织.弹簧框架.网路.小服务程序.分派器 </小服务程序-类> <加载-上-启动>1</加载-上-启动> </小服务程序> <小服务程序-映射> <小服务程序-名称>弹簧座</小服务程序-名称> <网址-模式>/</网址-模式> </小服务程序-映射> </网路-应用程式> |
4) 在/ WEB-INF /文件夹中创建一个名为springrest-servlet.xml的xml文件。
如果您想使用不同的弹簧包来搜索控制器,请更改context:component-scan。请参考 春季MVC 你好世界示例 了解更多。
1 2 3 4 5 6 7 8 9 10 11 12 |
<豆子 XML文件ns="http://www.springframework.org/schema/beans" XML文件ns:语境="http://www.springframework.org/schema/context" XML文件ns:多媒体="http://www.springframework.org/schema/mvc" XML文件ns:si="http://www.w3.org/2001/XMLSchema-instance" si:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"> <多媒体:注解-驱动的/> <语境:零件-扫描 基础-包=“ 组织.arpit.java2blog.controller” /> </豆子> |
创建bean类
5) Create a 豆 名称 “Country.java”在org.arpit.java2blog.bean中。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
包 组织.Arpit.爪哇2blog.豆; 进口 爪哇x.XML文件.捆绑.注解.XmlElement; 进口 爪哇x.XML文件.捆绑.注解.XmlRootElement; @XmlRootElement(名称=“国家”) 上市 类 国家{ 私人的 整型 ID; 私人的 串 国家的名字; 上市 国家() { } 上市 国家(整型 i, 串 国家的名字) { 超(); 这个.ID = i; 这个.国家的名字 = 国家的名字; } @XmlElement 上市 整型 getId() { 返回 ID; } 上市 虚空 设置名称(整型 ID) { 这个.ID = ID; } @XmlElement 上市 串 getCountryName() { 返回 国家的名字; } 上市 虚空 setCountryName(串 国家的名字) { 这个.国家的名字 = 国家的名字; } } |
我们需要使用@XmlRootElement和@XmlElement注释bean类以支持xml。如您所见,我们用
JAXB批注,但是如果要支持列表,则不能编辑ArrayList类,因此可以创建另一个名为 国家列表 并且我们可以在该类中使用JAXB注释来支持xml输出。
国家列表.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
包 组织.Arpit.爪哇2blog.豆; 进口 爪哇.实用程序.清单; 进口 爪哇x.XML文件.捆绑.注解.XmlElement; 进口 爪哇x.XML文件.捆绑.注解.XmlRootElement; @XmlRootElement(名称 = “国家清单”) 上市 类 国家列表 { 清单listOfCountries; 上市 国家列表() { 超(); } 上市 国家列表(清单listOfCountries) { 这个.listOfCountries=listOfCountries; } 上市 清单getListOfCountries() { 返回 listOfCountries; } @XmlElement(名称 = “国家”) 上市 虚空 setListOfCountries(清单listOfCountries) { 这个.listOfCountries = listOfCountries; } } |
创建控制器
6) 创建一个名为的控制器“CountryController.java”
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
包 组织.Arpit.爪哇2blog.控制者; 进口 爪哇.实用程序.数组列表; 进口 爪哇.实用程序.清单; 进口 组织.Arpit.爪哇2blog.豆.国家; 进口 组织.Arpit.爪哇2blog.豆.国家列表; 进口 组织.弹簧框架.网路.捆绑.注解.路径变量; 进口 组织.弹簧框架.网路.捆绑.注解.请求映射; 进口 组织.弹簧框架.网路.捆绑.注解.请求方法; 进口 组织.弹簧框架.网路.捆绑.注解.RestController; @RestController 上市 类 国家Controller { @请求映射(值 = “ /国家”, 方法 = 请求方法.得到,标头=“接受= 应用程式lication / XML文件”) 上市 国家列表 getCountries() { 国家列表 国家List=createCountryList(); 返回 国家List; } @请求映射(值 = “ /国家/ {id}”, 方法 = 请求方法.得到) 上市 国家 getCountryById(@路径变量 整型 ID) { 清单listOfCountries = 新 数组列表(); 国家列表 国家List=createCountryList(); listOfCountries=国家List.getListOfCountries(); 对于 (国家 国家: listOfCountries) { 如果(国家.getId()==ID) 返回 国家; } 返回 空值; } ///使用Utiliy方法创建国家/地区列表。 上市 国家列表 createCountryList() { 国家 印度国家=新 国家(1, “印度”); 国家 中国国家=新 国家(4, “中国”); 国家 尼泊尔国家=新 国家(3, “尼泊尔”); 国家 不丹国家=新 国家(2, “不丹”); 清单listOfCountries = 新 数组列表(); listOfCountries.加(印度国家); listOfCountries.加(中国国家); listOfCountries.加(尼泊尔国家); listOfCountries.加(不丹国家); 返回 新 国家列表(listOfCountries); } } |
@PathVariable: 用于将URL中的值注入到方法参数中。通过这种方式,您可以在getCountryById方法中注入id。
我们不提供任何视图信息 弹簧座-servlet.xml,就像我们在 春季MVC。 如果我们需要直接从控制器获取资源,则需要按照竞彩篮球分析 3返回@ResponseBody,但对于竞彩篮球分析 4,我们可以使用@RestController。
在竞彩篮球分析 4.0中,我们可以使用@RestController,它是@Controller + @ResponseBody的组合。
1 2 3 |
@RestController = @控制者 + @ResponseBody |
6) It ‘是时候进行Maven构建了。
运行应用程序
当您运行应用程序时,您可能会收到这种警告
1 2 3 4 |
三月 26, 2016 1:45:51 上午 组织.弹簧框架.网路.小服务程序.找不到网页 noHandlerFound 警告: 没有 映射 发现 对于 HTTP 请求 与 URI [/弹簧RestfulWebServicesWithXMLExample/] 在 分派器 与 名称 '竞彩篮球分析RestfulWebServicesWithJSONExample' |
请忽略以上警告。启动应用程序时,如果未提供起始页,则位于URL下方:
http:// localhost:8080 / 弹簧RestfulWebServicesWithXMLExample /
当我们在web.xml中使用DispatcherServlet时,此请求转到spring 分派器,并且未在controller中找到相应的映射,因此收到该警告。
9) 在以下条件下测试您的REST服务:“http:// localhost:8080 / 弹簧RestfulWebServicesWithXMLExample / countries”.
那’关于竞彩篮球分析 Restful 网页服务xml示例的全部内容。