| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1012 人关注过本帖
标题:Servlet实例并初始化
只看楼主 加入收藏
时空之蕊
Rank: 2
等 级:新手上路
威 望:3
帖 子:691
专家分:0
注 册:2004-10-31
收藏
 问题点数:0 回复次数:6 
Servlet实例并初始化
想在一启动服务时,就让Servlet实例并初始化,就像Filter一样,是动.xml吧.但不知道细节,麻烦知道的大侠帮一下.

看了http://bbs.bc-cn.net/viewthread.php?tid=125734楼主发的帖子,以及版主的解答,结合自身的学习积累

1。我自己的以前学习的结果是——servlet只有在第一次被请求的时候才加载到内存里面去的,也就是类的加载和实例化是差不多同时进行的,当然类被类加载器加载肯定在实例化前面
2。这一次我测试了load-on-startup—记得这个参数是说明类加载器加载各个web。xml中的servletc的加载顺序,
3。经过测试 在类中加入
public class TestServletStart extends HttpServlet {
static {
System.out.println("被加载了");
}

{
System.out.println("我被实例化了");
}
从控制台得到结果
3.1如果存在load-on-startup参数,那么不管值为多少都会被实例化
3.2如果不存在,那么只有在第一次被请求的时候才会实例化

[此贴子已经被作者于2007-3-22 11:33:00编辑过]

搜索更多相关主题的帖子: Servlet实例 内存 加载 quot php 
2007-03-22 10:10
angeloc
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:36
帖 子:1353
专家分:0
注 册:2006-11-21
收藏
得分:0 
你应该去看看完整的容器启动过程的分析。这些都是常识。

老牛明知夕阳晚,不用扬鞭自奋蹄; Angelo\'s BLOG
2007-03-22 11:03
时空之蕊
Rank: 2
等 级:新手上路
威 望:3
帖 子:691
专家分:0
注 册:2004-10-31
收藏
得分:0 
我本来是要应用别人的阿,嘿嘿,我倒是没有注意过load-on-startup对servlet的加载的影响,这个参数存在的话,那么在应用初始化时就会去实例化servlet而不是第一次请求,刚才看了English的原版

我渴望掌控时空的核心——用最先进的技术,打造无比美丽的世界!
2007-03-22 11:14
喃瑟
Rank: 1
等 级:新手上路
威 望:1
帖 子:472
专家分:0
注 册:2007-1-25
收藏
得分:0 
哈哈 我只知道用<form action="servletname"></form>这种方法启动servlet
Filer是用户请求时自动启动的

光与影的1/2
2007-03-22 11:19
angeloc
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:36
帖 子:1353
专家分:0
注 册:2006-11-21
收藏
得分:0 
倒,那个参数就是用来按顺序加载SERVLET的!

老牛明知夕阳晚,不用扬鞭自奋蹄; Angelo\'s BLOG
2007-03-22 11:20
时空之蕊
Rank: 2
等 级:新手上路
威 望:3
帖 子:691
专家分:0
注 册:2004-10-31
收藏
得分:0 

嘿嘿,叫劲了阿!哈哈,看清楚我的意思啊,我侧重的是说没有注意过load-startup参数对于servlet的类什么时候被类加载器加载到内存中,而不是说起他的,我的英文也不至于那么差拉!
不争了!结帖


我渴望掌控时空的核心——用最先进的技术,打造无比美丽的世界!
2007-03-22 11:31
angeloc
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:36
帖 子:1353
专家分:0
注 册:2006-11-21
收藏
得分:0 
以下是引用时空之蕊在2007-3-22 11:31:45的发言:

嘿嘿,叫劲了阿!哈哈,看清楚我的意思啊,我侧重的是说没有注意过load-startup参数对于servlet的类什么时候被类加载器加载到内存中,而不是说起他的,我的英文也不至于那么差拉!
不争了!结帖

所以我建议你把整个容器启动过程了解下啊,这样对才对运行过程有整体把握。
如果你只是做做小网站,或者为了应付考试那就不需了解了。

所有JSP被调用时候都是转成SERVLET,所有SERVLET也是第一次被调用时候才编译的。
如果你需要在项目中应用框架,必然涉及到启动顺序问题,因为需要先调用某些SERVLET来初始化框架相关的东西。

我说这些的目的是说这些问题很重要,是本质,必须了解。希望你没误会我的意思!


老牛明知夕阳晚,不用扬鞭自奋蹄; Angelo\'s BLOG
2007-03-22 12:50
快速回复:Servlet实例并初始化
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019746 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved