通过实例学习JAVA对象转成XML输出
作者:Way Lau 发布时间:2023-01-14 15:25:35
标签:java,对象,xml,输出
一、总体说明 XML和JSON 是最为常用的数据交换格式
本例子演示如何将java对象,转成XML输出。
二、流程
1.在上文的例子中,创建一个包“com.waylau.rest.bean”
2.在该包下创建一个JAVA类”User”
package com.waylau.rest.bean;
import javax.xml.bind.annotation.XmlRootElement;
/* *
* 用户 bean
* @author waylau.com
* 2014-3-17
*/
@XmlRootElement
public class User {
private String userId;
private String userName;
private String age;
public User() {};
public User(String userId, String userName, String age) {
this.userId = userId;
this.userName = userName;
this.age = age;
}
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
}
注意:该类上面增加了一个注解“@XmlRootElement”,在将该类转化成XML时,说明这个是XML的根节点。
3.在“com.waylau.rest.resources”中,增加资源“UserResource“,代码如下:
package com.waylau.rest.resources;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.PathParam;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.PUT;
import com.waylau.rest.bean.User;
@Path("/users")
public class UserResource {
private static Map<String,User> userMap = new HashMap<String,User>();//存储用户
/**
* 查询所有
* @return
*/
@GET
@Produces(MediaType.APPLICATION_XML)
public List<User> getAllUsers(){
List<User> users = new ArrayList<User>();
User u1 = new User("001","WayLau","26");
User u2 = new User("002","King","23");
User u3 = new User("003","Susan","21");
userMap.put(u1.getUserId(), u1);
userMap.put(u2.getUserId(), u2);
userMap.put(u3.getUserId(), u3);
users.addAll( userMap.values() );
return users;
}
@GET
@Path("/getUserXml")
@Produces(MediaType.APPLICATION_XML)
public User getUserXml() {
User user = new User();
user.setAge("21");
user.setUserId("004");
user.setUserName("Amand");
return user;
}
}
其中MediaType.APPLICATION_XML 说明了是以XML形式输出
在浏览器输入http://localhost:8089/RestDemo/rest/users/getUserXml,输出单个对象
在浏览器输入 http://localhost:8089/RestDemo/rest/users 输出对象的集合
本章源码:https://github.com/waylau/RestDemo/tree/master/jersey-demo2-xml
来源:https://waylau.com/jersey-restful-java-xml/
![](https://www.aspxhome.com/images/zang.png)
![](https://www.aspxhome.com/images/jiucuo.png)
猜你喜欢
- IDE工具之IDEA2022.2的简介、下载与安装、初步配置IDEA简介概述IDEA全称是IntelliJ,是JetBrains公司推出一个
- 在Java中可以使用HttpServer类来实现Http服务器,该类位于com.sun.net包下(rt.jar)。实现代码如下:主程序类p
- 本文实例讲述了Java Web开发之基于Session的购物商店实现方法。分享给大家供大家参考,具体如下:package cn.com.sh
- 整理文档,搜刮出一个Java实现身份证号码验证源码示例代码,稍微整理精简一下做下分享。package xxx;/** * Created b
- 通常我们在看一些源码时,发现全是T、?,晕乎乎的:sob:。于是,把泛型掌握好十分重要!什么是泛型Java 泛型(generics)是 JD
- 前言最近想体验下最新版本的SpringBoot,逛了下官网,发现SpringBoot目前最新版本已经是2.6.4了,版本更新确实够快的。之前
- 一.WebSocket简单介绍WebSocket protocol 是HTML5一种新的协议。它实现了浏览器与服务器全双工通信(full-d
- 返回值类型:System.Int64表示为 Windows 文件时间的当前 DateTime 对象的值。例如:DateTime.Now.To
- 日常的Rest服务开发我都会首选SpringBoot,因为它本身的易用性以及自带的各种方便功能、生态等,今天就简单讲一下如何将Spring
- 在spring 3.2 及以后版本中增加了对请求的异步处理,旨在提高请求的处理速度降低服务性能消耗。在我们的请求中做了耗时处理,当并发请求的
- 本文实例讲述了Java方法的参数传递机制。分享给大家供大家参考,具体如下:参数传递机制对于程序设计语言来说,一般方法(函数)的参数传递有两种
- 本文实例讲述了Java擦除和转换。分享给大家供大家参考,具体如下:一 点睛在严格的泛型代码里,带泛型声明的类总应该带着类型参数。
- 一:背景1. 讲故事每次项目预交付的时候,总会遇到各种奇葩的坑,我觉得有必要梳理一下以及如何快速解决的,让后来人避避坑,这篇就聊聊自己的所闻
- 一、传递参数既可以通过值也可以通过引用传递参数。通过引用传递参数允许函数成员(方法、属性、索引器、运算符和构造函数)更改参数的值,并保持该更
- 1. ThreadLocal详解JDK1.2版本起,Java就提供了java.lang.ThreadLocal,ThreadLocal为每个
- 本文实例为大家分享了C#实现贪吃蛇小游戏的具体代码,供大家参考,具体内容如下之前一直想写一个贪吃蛇小游戏,上个周末终于有时间做了一个,现在和
- 故障:收到服务器报警,内存使用率超过80%1.查看使用dstat和top查看内存使用最高的应用使用dstat查到内存占用最高的是java应用
- Java中字符串中子串的查找共有四种方法,如下:1、int indexOf(String str) :返回第一次出现的指定子字符串在此字符串
- 本文实例讲述了C#后台创建控件并获取值的方法。分享给大家供大家参考。具体实现方法如下:前台代码:<form id="form
- 前言最近在学习spring,抽空会将学习的知识总结下面,本文我们会接触spring 4的新功能:@Conditional注解。在之前的spr