当前位置:  开发笔记 > 编程语言 > 正文

在GWT启动时启动后台线程

如何解决《在GWT启动时启动后台线程》经验,为你挑选了1个好方法。

我有一个GWT应用程序,显示由JFreeChart呈现的一些图表.每隔几分钟,页面刷新一次,这会导致应用程序生成新图表.(换句话说,整个图表生成过程由客户端请求引导.)问题是多个客户端命中同一个服务器会导致生成图表的多个请求,但由于所有用户的图表相同,真的没有理由这样做.我想在后台线程中预先渲染图表,这将在应用程序启动时启动,然后根据请求将已呈现的图表提供给客户端.

我没有在GWT中看到任何"认可"的方式来在服务器启动时执行您自己的代码.我能想到的唯一方法是创建一个servlet,它在应用程序容器启动时加载,并在init()方法中启动图表生成线程.

有更优选的方法吗?

注意:假设这是真的,"不"是一个完全可以接受的答案.



1> rustyshelf..:

回答你的问题:不.GWT是一种前端技术,穿过这条线的唯一GWT就是RPC机制.您可以执行的唯一"GWT"类型方法是在用户第一次请求时检查图表文件是否存在,如果不这样做则生成图表文件.这意味着使用文件系统作为您是否已创建的检查.

更好的方法是按照你说的去做,例如:配置你的web项目,以便在启动时开始上课.您可以在web.xml中执行此操作,如下所述:

http://wiki.metawerx.net/wiki/Web.xml.LoadOnStartup

这是Stripes如何做到的一个例子:


        StripesDispatcher
        net.sourceforge.stripes.controller.DispatcherServlet
        1
    
    
        StripesDispatcher
        *.action
    

推荐阅读
殉情放开那只小兔子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有