config和context的应用:
在servlet中预留参数,我们可以自己写外部的配置文件来读取,但是自己写比较麻烦,Tomcat做了一些比较好的方法,例如使用web.xml文件来配置参数,使用servletConfig或servletContext来读取。
tomcat创建servlet的逻辑:
LoginServlet s = new LoginServlet ();
ServletConfig c = new ServletConfig ();
c.加载数据();//此方法会从web.xml加载数据
s.init(c);
1)config
-假设要开发一个网页游戏
-当用户数超出最大在线人数时要排队
-登录时判断是否已达到最大人数
-登录:LoginServlet
-最大人数:maxOnline,可以配置
-该参数只给LoginServlet自己用,所以使用config读取即可
####在标签内预置参数
<init-param>
<param-name>maxOnline</param-name>
<param-value>3000</param-value>
</init-param>
2)context
tomcat启动时就会创建唯一的context,并且会调用它的方法加载web.xml中的公用参数,context是全局的,任何servlet都可以使用
-软件内有很多查询功能,都带有分页功能
-每页显示的行数size是常量,并且可以配置
-该数据在多个查询功能之间共用,使用context读取
####在标签外配置的参数是给所有servlet公用的参数,它们都可以通过context读取该参数。
<context-param>
<param-name>size</param-name>
<param-value>20</param-value>
</context-param>
context的特殊用法:
-前提:之前使用config和context读取的是常量
-而context还有能力读写变量
-用该对象读写的变量是可以被所有的servlet共用的
-setAttribute()/getAttribute()