我的建议是,把那部分单独拿出来做一个model,然后在servlet中调用该model。
当你访问以上servlet的时候Tomcat的web container会生成一个http thread来handle这个
request。当需要执行那个model,如果是EJB的话会通知EJB Container去生成一个thread去
执行该model,然后原来的http thread会被suspend,当Model执行完毕以后会把结果返回。
原来的两个thread会等待reuse。
你担心的问题应该是,model在执行的情况下,会不会影响别的用户的访问。
是不会的。除非,比方说web container的max thread count被设置成10,然后你先后发送了10个需要长时间运行的request,这样所有的thread都被用完,所以第11个request需要在queue里等待直到某一个request finish。
在web.xml中配置一个你想自动执行的servlet,然后
这样在你tomcat启动的时候就自动加载了这个servlet了。
servlet本来就是多线程的啊,不需要做什么