1.前一天重点内容复习
ServletContext作用
作用1:获取上下文路径
request.getContextPath()
作用2:获取全局参数
request.getInitParameterNames():获取所有全局参数的名称
request.getInitParameter(String name):通过全局参数的名称获取参数值
作用3:请求转发
request.getRequestDispatcher("/文件名").forwared(request,response)
作用4:域对象,不同servlet之间传值
request.getServletContext:获取全局域对象
servletcontext.setAttribute(String name,Object objs):给全局域对象绑定内容
servletcontext.getAttribute(String name):从全局域对象获取指定对象内容
servletcontext.removeAttribute(String name):从全局域对象解绑指定内容
Servlet的生命周期
1.创建
2.初始化
3.执行业务操作
4.销毁
Servlet请求转发特点
1.地址栏没有变化
2.请求转发中,request都是一致的
3.转发到某个jsp页面,如果有数据获取需求,则必须使用请求转发
4.请求转发可以访问本工程所有资源文件
简述MVC三层架构思想
M:model(业务模型)
通过service业务层调用dao数据访问接口,获取业务数据
V:View(视图层)
通过控制器来控制视图
C:controller(控制层)
核心技术:servlet
控制视图,请求转发,重定向,调用业务层,获取业务数据
代码分层:
实体层
控制层
业务层
数据访问层
2.request(请求对象)和response(响应对象)功能
request(请求对象)的功能:
String getMethod():获得请求提交的方式
String getProtocol():获得请求提交的协议版本
String getRequestURI():获取请求提交的uri
String getRequestURL().toString():获取请求提交的url
String getHeader(String var):获取请求提交的浏览器
String getParameter(String var):获取提交页面的指定参数的值
request.setCharacterEncoding("utf-8"):设置请求内容编码为utf-8
Enumeration<String> getParameterNames():获取提交页面地址栏中的所有参数的名称
response(响应对象)的功能:
response.setContentType("text/html;charset=utf-8"):设置响应头内容,响应内容编码为utf-8
eader(String var1, String var2):设置响应头,var1为content-type,则var2就为解决中文乱码内容,var1为location,则var2就为重定向的文件地址
void setStatus(int var1):设置相应状态码
void sendRedirect(String var1) throws IOException:设置重定向
状态码:
404:地址服务器找不到
405:提交方式有问题
500:服务器出错
200:相应成功
3.jsp
jsp本质:
能够书写java代码的html页面,本质就是servlet
jsp执行流程
翻译:jsp文件翻译为java文件
编译:java文件编译为class文件
三大指令
<%@page%>:page指令,默认存在
默认属性:
contentType:页面编码格式
language:页面使用语言(只能使用java)
isELIgnored:是否启用el表达式,默认不启用
buffer:缓冲区大小(默认8kb)
errorPage:出现错误跳转页面
isErrorPage:是否是错误页面
extends:jsp继承关系
<%@include%>:静态导入,将公共的jsp界面导入其他jsp界面
使用格式:
<%include file="被导入页面" %>
<%@taglib%>:导入jstl库,核心标签c
9大内置对象
前四个为域对象:
PageContext pagecontext:页面有效
HttpServletRequest request:请求有效
HttpSession session:会话有效
ServletContext application:全局有效
普通对象
ServletConfig config:配置对象
JspWriter out:向浏览器输出内容对象
Object page(this):当前jsp对象
Throwable t:异常对象
HttpServletResponse response:响应对象
isp的脚本
<%java代码%>
使用jsp内置对象out可以向浏览器输出内容
jsp的输出表达式
<%=变量结果%>
jsp的el表达式
${域对象中的属性名称}:范围从小到大获得域对象属性名称对应的值
4.jsp的jstl(jstl核心标签库)
判断:
<c:if test="${}">
</c:if>
选则:
<c:choose>
<c:when test="${}">
</c:when>
<c:when test="${}">
</c:when>
.......
</c:choose>
遍历
<c:foreach>
</c:foreach>