gpt4 book ai didi

java - 使用 Jersey REStful Web 服务返回响应?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:06:29 25 4
gpt4 key购买 nike

我正在使用 JAX-RS 网络服务( Jersey )。我有一个 pojo User.java。这个 pojo 不是从 XSD 生成的。这个pojo是手写的。 我可以使用 REStful 网络服务方法返回这样一个 pojo吗?另外,使用 Restful WEbservices 时是否必须编写 XSD?

@GET
@Produces ("application/xml")
public List<User> getUsersAll() {
List<User> als=null;
try {
als= UserService.getInstance().getUserAll();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

return als;
}

如果没有 jaxb 生成的对象 User,java 而只有手写的 User.java,上面的代码是否可行?另外,总是编写 XSD 是好习惯吗?谢谢!

最佳答案

我可以使用 RESTful 网络服务方法返回这样的 pojo 吗?

---> 是的,你可以。

此外,使用 RESTful 网络服务时是否必须编写 XSD?

---> 不,XSD 不是强制性的。

通常最好生成或编写 XSD
即使您手动编写了 Java 类。
那是因为使用您的 WS 的人/客户将
可能想要你的一些“模型”,基本上
意味着他们想要一个 XSD。

对于 Jersey 你可以这样做:

<servlet>
<servlet-name>test-rest-service</servlet-name>
<servlet-class>
com.sun.jersey.spi.container.servlet.ServletContainer
</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>com.test.rest.resource</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>

Tomcat 将扫描这个包并寻找资源
那里通过注释映射到 URL 路径。
WADL 将在运行时自动生成。但是这个 WADL 将
没有客户端可以用来验证
的XSD它发送的数据。

关于java - 使用 Jersey REStful Web 服务返回响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20741365/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com