【JavaWeb】JavaWeb从入门到实战(5)
前言:
本文内容:ServletContext对象、ServletContext应用
推荐免费JavaWeb入门到实战视频:【狂神说Java】JavaWeb入门到实战_哔哩哔哩_bilibili
ServletContext对象
Web容器在启动的时候,它会为每个web程序都创建一个对应的ServletContext对象,它代表了当前的web应用:
-
共享数据
多个Servlet之间可以数据共享
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18public class HelloServlet extends HttpServlet {
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("hello");
// this.getInitParameter(); 初始化参数
// this.getServletConfig(); Servlet配置
// this.getServletContext(); Servlet上下文
ServletContext context = this.getServletContext();
String username = "小王";
// 将数据保存在ServletContext
context.setAttribute("username",username);
}
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req,resp);
}
}读取的Servlet
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15public class GetServlet extends HttpServlet {
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
ServletContext context = this.getServletContext();
// 获取HelloServlet中传的值
String username=(String) context.getAttribute("username");
resp.setContentType("text/html;charset=utf-8");
resp.getWriter().print("姓名:"+username);
}
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req,resp);
}
}配置文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19<!-- 注册Servlet-->
<servlet>
<servlet-name>hello</servlet-name>
<servlet-class>com.jokerdig.servlet.HelloServlet</servlet-class>
</servlet>
<!-- Servlet映射-->
<servlet-mapping>
<servlet-name>hello</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
<!-- get注册-->
<servlet>
<servlet-name>get</servlet-name>
<servlet-class>com.jokerdig.servlet.GetServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>get</servlet-name>
<url-pattern>/get</url-pattern>
</servlet-mapping>测试值结果,Servlet之间通过ServletContext可以传递数据
ServletContext应用
获取初始化参数
配置初始化参数
1 | <!-- 配置web初始化参数--> |
获取初始化参数
1 |
|
请求转发
请求转发地址不会改变
重定向地址会改变
1 |
|
读取资源文件
Properties
- 在Java目录下新建Properties
- 在resources下新建properties
发现:都被打包到了同一个路径下:classes,我们称为类路径
读取properties资源文件
1 |
|
web.xml配置
1 | <!-- 注册Servlet--> |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Hey,Joker!
评论
ValineTwikoo