`

JAXB WebService数据映射

    博客分类:
  • J2EE
阅读更多

作用是 java对象 <---> xml文件   之间的转换

JAXB Annotation

@XmlRootElement   // xml 文件的根元素

@XmlElement

@XmlAccessorType  // 表明类内,什么样的成员 是 可以被xml 转化 传输的  可以是 FIELD PROPERTY ...

@XmlTransient

@XmlJavaTypeAdaptor      http://speed847.iteye.com/blog/454231

 

 

1.1webService接口(传入一个对象参数)

@WebService
public interface ISampleService {

 public String sayUserName(
   @WebParam(name="user")
   UserDTO user);
}

 

1.2 webService实现类

@WebService(endpointInterface="com.server.ISampleService")
public class SampleServiceImpl implements ISampleService {

 public String sayUserName(UserDTO user) {
  
  return user.getName();
 }

}

 

1.3

/*
 * 使用jaxb 的annotation标注java-xml映射,尽量使用默认约定
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name="User")
public class UserDTO {
 private Integer id;
 private String name;

}

 

 

2.1 webService接口(返回一个list)

@WebService
public interface IListServer {

 public @WebResult(partName="lt") StringList tList();
}

 

 

2.2 webService实现类

@WebService(endpointInterface="com.server.list.IListServer",targetNamespace = "http://list.server.com/", serviceName = "ListServerService", portName = "ListServerPort")
public class ListServer implements IListServer{

 
 public StringList tList(){
  List<Object> lt=new ArrayList<Object>();
  lt.add(1);
  lt.add(233);
  lt.add("I love you!");
  lt.add("你好!");
  
  StringList sl=new StringList();
  sl.setStrList(lt);
  return sl;
 }
}

 

2.3 把list封装成一个对象

@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(propOrder={"strList"},name="stringlist")
public class StringList {

 @XmlElement(nillable=true)
 private List<Object> strList;

 public List<Object> getStrList() {
  return strList;
 }

 public void setStrList(List<Object> strList) {
  this.strList = strList;
 }
}

 

 

JAXB uses annotations to specify which Java properties in a class should be serialized using MTOM or WSIAP. For MTOM, the @XmlMimeType annotation lets you specify how a binary (e.g., java.awt.Image) Java property gets bound to a schema element decorated with the xmime:content-Type attribute. The xmime:contentType attribute [XMIME] is used to indicate the content type of an XML element with type xs:base64Binary or xs:hexBinary. For WSIAP, the @XmlAttachmentRef annotation plays the same role.

<script></script>

分享到:
评论

相关推荐

    Jaxb webservice java调用

    JAXB允许我们将Java类映射到XML Schema,反之亦然。这意味着我们可以定义Java类来表示业务对象,然后JAXB会自动生成解析和序列化XML的代码。同样,当我们接收到XML数据时,JAXB也能自动将其转换为Java对象。 在创建...

    webservice之使用jaxb把xml转换Object或把对象转换成xml文件

    在Java世界中,使用JAXB(Java Architecture for XML Binding)库可以方便地实现XML数据与Java对象之间的转换,从而在WebService中轻松处理数据交换。本篇文章将深入探讨如何使用JAXB进行XML到Object以及Object到XML...

    WebService数据转换

    总结来说,WebService数据转换涉及了XML作为通用数据交换格式的使用,客户端和服务端之间的数据模型映射,以及像JSR 181这样的标准来简化开发。学习这些知识点对于理解和构建跨平台、跨系统的互操作性解决方案至关...

    webservice实例 CXF的JAXWS和JAXRS实现 及JAXB标准接口实现带jar包

    然后,**JAXB** 是一个核心的Java技术,用于将XML文档和Java对象之间的映射自动化。它允许我们通过注解或者XML绑定配置文件来定义Java类和XML元素之间的关系。在Web服务中,JAXB通常用于序列化和反序列化Java对象到...

    xfire-webservice数据格式及集成spring

    例如,通过JAXB(Java Architecture for XML Binding),可以将Java类直接映射为XML Schema,反之亦然。此外,XFire还支持其他数据格式,如JSON,这在与JavaScript交互或构建RESTful API时非常有用。 4. **XFire与...

    cxf-webservice复杂类型

    2. **自定义数据类型**:对于像Map这样的复杂类型,开发者可以创建自定义的数据类型来映射XML元素。这通常涉及到创建一个Java类,该类具有一个或多个属性,用于存储Map的键值对,并通过注解这些属性来指示CXF如何...

    JAXB工具类 xml转为java对象 java对象转为xml

    JAXB提供了一种自动化的机制,将XML Schema(XSD)映射到Java类,反之亦然。这允许开发者在Java应用中存储和序列化数据为XML格式,同时保持代码的简洁性和可维护性。JAXB的核心组件包括: 1. **Unmarshaller**: ...

    普通java访问c# webService

    在这个示例中,提供的jar包可能包含了处理WebService调用所需的库,如JAXB(用于XML到Java对象的绑定)、SOAP相关的API等。确保正确地将这些jar包添加到你的项目类路径中,以便于Java程序能够正确运行。 此外,注意...

    Spring_WebService源码

    3. **创建Endpoint**: 实现服务业务逻辑,Spring-WS会自动将SOAP请求映射到相应的Java方法。 4. **配置并启动服务器**: 在Spring配置文件中配置Web服务,如端口、marshaller等,并部署到应用服务器。 5. **客户端...

    WebService中使用自定义类的五种解决方法

    通过为自定义类添加JAXB注解,如`@XmlRootElement`和`@XmlElement`,我们可以指示JAXB如何映射对象到XML元素。这样,自定义类就能在SOAP消息中顺利传递。 3. **使用Gson或Jackson库**: 如果使用RESTful Web...

    个人总结的webservice jar包

    2. **jaxb-api.jar**:Java Architecture for XML Binding (JAXB)用于将Java对象与XML文档之间进行映射。它允许我们从Java对象生成XML,反之亦然。在Web服务中,JAXB用于序列化和反序列化数据。 3. **activation....

    WebService CXF 对象传递 附

    JAXB允许我们通过简单的注解将Java类映射为XML Schema,从而实现对象的序列化和反序列化。 3. **创建Web服务** 创建一个CXF Web服务的第一步是定义服务接口和实现。接口声明了服务的公共操作,而实现提供了这些...

    JAVA的WebService支持

    在Web服务中,JAXB用于在XML和Java数据类型之间进行序列化和反序列化,使得数据传输更加便捷。 6. Spring Framework:Spring提供了全面的Web服务支持,包括SOAP和REST。Spring Web Services专注于创建基于文档驱动...

    webservice的jar包

    7. **JAXB绑定**:JAX-WS与Java Architecture for XML Binding (JAXB)紧密集成,允许开发者将Java对象与XML schema进行映射,简化数据的序列化和反序列化过程。 在实际开发中,使用JAX-WS的步骤通常包括:定义服务...

    WebService

    WebService是一种基于XML(Extensible Markup Language)的开放标准,它允许不同系统间的应用程序通过网络进行交互,实现数据共享和服务的互操作性。在Java开发环境中,XFire是一个流行且功能强大的开源工具,用于...

    myeclipse webservice 常用jar包集合

    JAX-WS通常包含在myeclipse的jar包中,如`webservice.jar`,它提供了从Java类到SOAP消息的映射,以及从SOAP消息到Java对象的反向映射。 3. ** Axis**:Axis是Apache软件基金会的一个开源项目,它为Java开发者提供了...

    webservice使用cxf的实例

    6. **数据绑定**:CXF支持JAXB(Java Architecture for XML Binding),将XML与Java对象之间进行映射。这意味着XML文档可以直接转换为Java对象,反之亦然,简化了数据的序列化和反序列化。 7. **安全性**:CXF支持...

    webservice

    Web服务(WebService)是一种基于互联网的、平台独立的软件接口,允许不同系统之间进行交互和数据交换。在Java开发环境中,实现Web服务通常涉及到一系列的jar包,这些库提供了必要的API和技术支持。"webservice"项目...

    简单的WebService

    3. **jsr173_api-1.0.jar**:Java API for XML Processing (JAXB) 规范的参考实现,用于XML和Java对象之间的映射,方便数据交换。 4. **jaxb-xjc-2.0.jar**:JAXB的XJC工具,用于从XML Schema生成Java类,帮助构建...

    JAX WebService开发

    1. **Java Architecture for XML Binding (JAXB)**:JAXB提供了一种机制,用于将XML Schema映射到Java代码,实现了数据绑定。这消除了手动处理XML和SOAP消息的需要,大大降低了编码难度。JAXB规范定义了Java和XML ...

Global site tag (gtag.js) - Google Analytics