当前位置:
首页 >
ServletContextListener
发布时间:2025/3/15
30
豆豆
生活随笔
收集整理的这篇文章主要介绍了
ServletContextListener
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
<context-param>标签,
比如
<context-param><param-name>breed</param-name>
<param-value>test</param-value>
</context-param>
应用在容器中启动之后,整个应用任何一个servlet都可以通过getContextConfig获取breed的值。
但是如果我们需要在项目启动的时候获取一个对象呢,而不仅仅是一个字符串呢?
我们可以通过写一个类实现ServletContextListener接口实现这一点。
<listener>
<listener-class>
servlet.ServletContextListenerTest
</listener-class>
</listener>
ServletContextListenerTest实现一个ServletContextListener的接口
这样应用的所有servlet就可以通过getAttribute共享这个dog对象了。
Dog类
package servlet;public class Dog {public String breed;public String getBreed() {return breed;}public void setBreed(String breed) {this.breed = breed;}public Dog(String breed) {this.breed=breed;}public void getDogBreed() {System.out.println("the breed of the dog is"+breed);} }
写一个情景类
package servlet;import java.io.IOException;import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet(urlPatterns={"/servletContextListenerTestClient"}) public class ServletContextListenerTestClient extends HttpServlet{private static final long serialVersionUID = -5169172101637034615L;@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {doPost(req, resp);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {Dog dog = (Dog)this.getServletContext().getAttribute("dog");dog.getDogBreed();}}
转载于:https://my.oschina.net/liangzhenghui/blog/184468
总结
以上是生活随笔为你收集整理的ServletContextListener的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 怎么获得ajax中data中的某个字段,
- 下一篇: 有一个3x4的矩阵,输出最大值,且输出对