Serlet三大职责
-
接收参数
-
处理业务
-
负责跳转
跳转方式
AServlet-->BServlet
-
请求转发
req.getRequestDispatcher("/forward/b").forward(req, resp);
特点
-
地址栏不会发生变化
-
请求只有一次
-
共享请求头信息
-
可以访问WEB-INF里面内容
-
不能跨域访问
-
最后一次响应起作用
-
-
重定向
resp.sendRedirect("/redirect/b");
特点
-
地址栏发生变化
-
请求两次
-
不会共享请求头信息
-
不可以访问WEB-INF里面内容
-
能跨域访问
-
最后一次响应起作用
-
-
请求包含(略)
四大作用域对象
我们在做数据共享的时候,把值存入到session里面,其实这个session就是其中一个作用域对象
作用域:存值的容器
四大作用域
-
pageContext 当前页面对象 存在多个对象 --开启页面到结束
-
request 一次请求 多次请求 请求开启 请求结束
-
session 一次会话 多次会话 --浏览器开启 到结束
-
application 一次应用 (从tomcat开启--结束) 一个对象
范围: pageContext --> request --> session --> application
作用域对象使用
使用方式与Session类似
作用域对象.setAttribute(String key,Object value)
作用域对象.getAttribute(String key);
作用域对象.removeAttribute(String key);
获取ServletContext对象方式
req.getServletContext();
req.getSesson().getServletContext();
super.getServletContext();
super.getServerConfig().getServletContext();
相应方法
app.getContextPath(); 获取上下文path路径
app.getRealPath(); 获取文件夹真实路径
app.getInitParameter(); 获取context-param配置的参数信息
JSP
什么是JSP ?
java 去做动态网页的技术,Servlet也是做动态网页的技术
主要关系
Servlet:主要以java代码为主
JSP:Java+Html为主(通常情况下一般不在JSP中写入Java代码)
JSP就是Servlet--体现
在访问JSP文件的,最终是要生成一个Servlet文件
尽量不要在Servlet里面写html,同样的 不要在JSP写java代码
JSP语法
<%-- --%> 注释语法
<%= %> out.print(内容) 输出到页面效果
<% 语句1 语句2 ...%> 把代码原封不动放到service方法里面
<%! %> 在类生产一个成员变量
JSP三大指令
page -- 当前页面指令
include -- 包含指令
包含指令 -- 静态包含
- 静态包含
静态包含用法
include file="header.jsp"
1. 被包含的页面 可以把不必要的内容去掉
2. 可以包含jsp 又可以包含 html
3. 被包含的页面 一般把叫片段 取名header.jspf
- 动态包含
动态包含用法:
1. 被包含的页面 可以把不必要的内容去掉
2. 可以包含jsp 有可以包含 html
3. 不能 包含片段 header.jspf
JSP九大内置对象
-
pageContext 处理请求
-
request 处理请求
-
session 会话跟踪→同一会话中多个网页共享信息
-
application Web应用对象
-
out 输出流对象
-
config 获取配置信息
-
response 处理响应
-
page 代表JSP产生的类对象
-
exeception 异常对象(只能在错误网页中使用)
网友评论