JAVAWEB系列2-1
Jsp基本使用
El表达式
JSTL
Listener
Filter
Ajax
JDBC
Junit
JSP基本的使用:
JSP:java server pages
定义:是一种***页技术,将Java代码和特定变动内容嵌入到静态的页面中,实现以静态页面为模板,动态生成其中的部分内容
JSP的指令:用来设置整个JSP页面相关的属性,如网页的编码方式和脚本语言。
Page指令:定义网页依赖属性,比如脚本语言、error页面、缓存需求等等
基本的指令:
Session:指定jsp页面是否使用session
Language:定义jsp页面所用的脚本语言
Contentype:指定jsp页面的MIME类型和字节编码
PageEncoding:把jsp翻译为utf编码代码的java代码的时候的编码
Import:导入要使用的java类
Errorpage:当jsp页面出现错误的时候转向的错误页面
IdErrorage:指定当前页面是否可以作为另一个jsp页面的错误处理页面
taglib指令:用来声明此JSP文件使用了自定义标签,同时引用所指定的标签库并设置标签库的前缀。
使用:<%@ taglib uri="URIToTagLibrary" prefix="tagprefix"%>
uri属性用来指定标签库的存放位置
prefix属性用来指定该标签库使用的前缀。
Include指令:包含其他文件
使用:<%@ include file="文件相对 url 地址" %>动作指标:在进行请求处理阶段起作用
基本的语法:<jsp:action_name attribute="value" />
Jsp:include:在页面被请求的时候,引入第一个文件
Jsp:forward:把请求转换到另外一个页面
Jsp:useBean:寻找或者实例化一个javabean
Jsp:setProperty:设置javabean的属性
Jsp:getProperty:获取某个javaBean的属性
Jsp:param:用于传递参数
使用方法:<jsp:param name="name" value="value"/>
name必须是字符串,不接受字符串内置对象
在JSP页面系统中已经默认内置的Java对象,这些对象不需要开发人员显式声明即可使用
对象分类:
输出输入对象:request对象、response对象、out对象Requests常用方法:
request.getRequestURL(): 浏览器发出请求时的完整URL,包括协议 主机名 端口(如果有)" request.getRequestURI(): 浏览器发出请求的资源名部分,去掉了协议和主机名" request.getQueryString(): 请求行中的参数部分,只能显示以get方式发出的参数,post方式的看不到 request.getRemoteAddr(): 浏览器所处于的客户机的IP地址 request.getRemoteHost(): 浏览器所处于的客户机的主机名 request.getRemotePort(): 浏览器所处于的客户机使用的网络端口 request.getLocalAddr(): 服务器的IP地址 request.getLocalName(): 服务器的主机名 request.getMethod(): 得到客户机请求方式一般是GET或者POST
通信控制对象
pageContext对象、session对象、application对象
Servlet对象
page对象、config对象
错误处理对象
exception对象
四大作用域:
定义:在web应用中 , JSP创建的对象有一定的生存周期 , 可以被其它组件或其它对象访问 , 对象的生存周期及可访问性称为作用域
分类:<作用域由大至小>
Application(应用域):所有用户共享
整个应用是指从应用启动,到应用结束
Session(会话域):一次请求访问的多个请求间
从用户打开浏览器开始,到用户关闭浏览器这中间的过程。
Request(请求域):一次请求访问多个资源
request里的变量可以跨越forward前后的两页。但是只要刷新页面,它们就重新计算了
Pagecontext(页面域):
仅限于用户请求的当前页面 request和page的生命周期都是短暂的,它们之间的区别:一个request可以包含多个page页(include,forward及filter)
Jsp的跳转
客户端跳转:地址栏发生了变化
客户端发出请求,得到要跳转的资源,于是再发出一次请求得到最终的资源,客户端进行了两次请求
<% response.sendRedirect("index.jsp");
服务器端跳转:地址栏发生不改变
当客户端请的资源没有回应以后,发现请求的文件要进行跳转,于是服务器自己进行跳转,返回跳转以后的资源,客户端只进行了一次请求
<jsp :foreward page=”index.jsp”/>
request.getRequestDispatcher("index.jsp").forward(request, response);Context的使用
Pagecontext:
设定:<% pageContext.setAttribute("name","hct");%>
获取:<%=pageContext.getAttribute("name")%>
在一个页面的时候,可以直接获取。不是一个界面的时候,需要使用include,才能获取。
RequestContext:
设定:<% request.setAttribute("name","hct");%>
获取: <%=request.getAttribute("name") %>
结合跳转,实现内容的传递
服务端跳转:因为是同一次请求,所以可以获取到内容
客户端跳转:因为进行了多次请求,故不可以获取到内容
SessionContext:
设定:<% session.setAttribute("name","hct");%>
获取:<%=session.getAttribute("name") %>
只有再同一个用用户之间进行数据的传递
ApplicationContext:
设定:<% application.setAttribute("name","hct");%>
获取:<% application.setAttribute("name","hct");%>
全局设定,所有用户均可以使用
京公网安备 11010502036488号