我正在考虑使用 RESTEasy 开发 Java Web 服务。我将遵循这个例子:http://technicalmumbojumbo.wordpress.com/2009/10/13/restful-webservices-using-jboss-resteasy-tutorial/
现在,这对于让服务器用简单的响应进行回复非常好,但是我如何让一些“后端”事情发生呢?例如,我想要一个排队系统,在服务器上不断地在后台运行,处理队列中的对象。当有人访问某个 URL(Web 服务)时,我希望 Web 服务将某些内容排队..
当时我脑子里唯一能想到的,这可能是完全错误的,就是制作一个单独的 Java (J2SE) 应用程序,它运行队列,并通过 RMI 或 Cajo 将 Web 服务连接到它或者什么的..
我想我想问的是,在 Tomcat 上运行的 Java Web 应用程序是否有任何在服务器启动时执行的“main() 方法”的概念?
感谢任何帮助
谢谢
最佳答案
I guess what I'm asking is that does a Java Web App running on Tomcat have any concept of a "main() method" which gets executed on server startup?
您可以使用 web.xml 文件中的适当加载启动标记让 servlet 在加载应用程序时启动。
例如:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<!-- snip stuff -->
<servlet>
<servlet-name>context</servlet-name>
<servlet-class>org.lastname.firstname.YourStartupServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<!-- snip stuff -->
</web-app>
关于具有后端功能的 Java Web 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3840877/