我在一个喜欢使用“企业”这个词的公司开始了一项新工作。因此,他们写的所有内容都是用Java编写的。我来自一个非常网络开发的背景,主要与LAMP堆栈一起工作。使用JBoss实现REST API服务的“正确”方式AS
现在,直到三天前,除了人们使用它以外,我对Java一无所知,它是一种编程语言。通过使用它,Java语言本身看起来很简单。但是,当人们说“Java”时,他们似乎指的不仅仅是语言,如各种框架和应用程序服务器。它有点过分了,在加快“Java”的速度方面遇到了一些麻烦。
即将发布的项目涉及到为其中一个产品创建公开的REST API。看起来很简单。然而,我有一些关于如何继续的问题。我正在与JBoss AS第一次合作;不确定在PHP中是否有等价物,这样我就可以理解JBoss究竟做了什么,但我怀疑有一种“正确”的做法。这就是我一直在想这样做的:
1)创建一个包,一个单独的servlet,就像这样:
package com.awesome.myrestapi;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class HiggiltyServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public HiggiltyServlet() {
super();
}
public void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
PrintWriter out = response.getWriter();
// @todo ideally, do something more RESTfully useful and less vindictive
out.println("<html><body>HAHA! all ur api requests are belong to us</body></html>");
out.close();
}
}
2)如你所见,我想的只是覆盖服务方式服务我的REST API请求。
3)相应的更新我的web.xml文件,使URL模式将匹配“higgilty”,从而使我的URL端点像....
http://localhost/awesomeproject/higgilty
现在,我觉得像我可能会做错事。我是以正确的方式去做这件事,还是我完全脱离了标记?
任何帮助,非常感谢。
啊,感谢您的解释。我会给它一个镜头。非常感谢你! – sayajay 2010-07-09 21:31:59