gpt4 book ai didi

Java Web Service后台进程更新服务数据

转载 作者:行者123 更新时间:2023-12-01 15:07:23 25 4
gpt4 key购买 nike

我有一个简单的 Tomcat 7 服务器,我想在其中实现一个 Java Web 服务,该服务提供一些我可以通过手机获取的数据。重点是我希望服务器上的数据每隔一段时间更新一次。所以我需要一个更新数据的“后台进程”。

我首先尝试在绑定(bind)实现类的构造函数中启动一个新线程(该类仅实现我自己的服务 - 而不是 HttpServlet 等),例如

public NewBindingImpl(){   
Thread informationFetcher = new InformationFetcher();
informationFetcher.start();
}

但我没有想到每次有人使用该服务时都会创建此类。此外,这只会在我要求时更新数据。但我怎样才能更新它们,比如每两个小时左右更新一次?

希望这里有人有想法。对于“简单”的网络服务来说这可能吗?

非常感谢,

托比亚斯

编辑:----

也许知道我在这里尝试了这个非常基本的教程会有所帮助:

http://www.elearning.witnut.com/230/java-web-service-creation-using-top-development-approach/

最佳答案

为什么在调用 servlet 的 init() 方法时不初始化线程?当调用相应的destroy()方法时,您可以将其关闭。该线程将绑定(bind)到 servlet 的生命周期,并且由于 init() 仅调用一次,因此您不必担心多个实例。

这是关于 init() method usage 的简短教程.

由于您希望每两个小时运行一次,请查看 Timer类(class)。对于更复杂的场景Quartz是一个强有力的竞争者。

关于Java Web Service后台进程更新服务数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12800842/

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