我如何在没有用户交互的情况下运行servlet

我想要执行一个servlet来从请求中获取服务器名称,服务器端口和ContextPath。 但我不想通过用户交互来调用servlet。 我想通过Java代码来执行这个servlet。 我不确定这是可能的。 请给我推荐。


为什么不只是简单地使用URL来请求servlet。

对于更复杂的使用尝试HttpClient。


如果你的意思是你只是想执行一些代码来从请求中提取信息,你为什么要调用一个servlet? 只需在某处编写一个方法,然后调用它。

您还可以使用Servlet过滤器来提取每个请求的这些信息,并将结果作为属性添加到HttpServletRequest对象中,以便处理请求的其他servlet可以找到并使用它。

如果你的意思是你想在启动时加载servlet,你可以在web.xml配置中添加它:

<servlet>
  ...
  <load-on-startup>1</load-on-startup>
</servlet>

如果你的servlet正在做一些事情,比如在没有用户交互的情况下每x分钟调用一次服务,那么你可能想要做一些不同的事情。

您可以使用ServletContextListener来监听Web上下文何时启动,然后启动您想要的任何代码。

http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletContextListener.html

链接地址: http://www.djcxy.com/p/67807.html

上一篇: How can I run servlet without user interacting

下一篇: ServletContext getContextPath()