0

我正在使用网络服务,我想提高一个档次。我将 Axis2 与 JAX-WS 一起使用。我正在考虑转移对象而不是String[]. 在我搜索了一下之后,我发现 JAXB 是执行此操作的正确支持。

但是,每次我想添加一个需要转移的模型类时,我都需要做很多工作(关闭所有可能出错的注释)。所以我认为把它抽象一点会更容易。

我正在考虑使用该Object类型创建 Web 服务。然后我可以将方法用作addObject(Object object), removeObject(Object object), retrieveObject(). 这意味着我的服务器需要处理传入的对象。如果我再添加一个新的模型类,我只需要在服务器端捕获它。我的客户需要包含导致一些冗余的模型类,但我可以接受。我觉得 Java 目前无法支持我的想法。至少 JAX-WS 和 JAXB 技术。

你们能告诉我我是对还是错,这是否是一个好主意,如果是这样,也许可以为我指出如何解决这个问题的正确方向(即使这意味着使用另一种技术)

提前致谢!

4

2 回答 2

0

您的客户端不需要模型类型,但是当您从服务器向客户端发送消息时,您必须对数据进行序列化和反序列化。我不确定 JAX-WS 是否与 JAX-RS 不同,但如果它们相同,那么您可以添加注释来标记您是否要生成/使用 json 或 xml。

将模型序列化为 json 后,您的客户端将毫无问题地读取您的数据。

此外,是的,您可以在创建请求和响应对象时使用对象。在我最近编写的一个 Web 服务中,我创建了一个类似于此的服务响应类

public class Response
{
    private Object data;
    private boolean success;

    public Response()
    {
        super();
    }

    //write getters and setters here

}

我认为我使用 Object 类的方式与您的想法类似。

于 2013-04-16T13:57:25.287 回答
-1

我绝对推荐您使用 JAX-RS(实现 JAXB),尤其是使用 Jersey 框架。它的用法很简单,允许您编组和解组业务对象。

看看这个泽西岛的例子

希望能帮助到你!

于 2013-04-16T14:07:41.883 回答