一.基础篇
1.小脚本:
用来在jsp中插入java代码(同一页面中小脚本中变量名不能重复)
格式:<% java代码 %>
2.表达式(在html中输出java中的值)
格式:<%= java表达式 %>
注:小脚本后边不能有分号(;)表达式中最后会翻译成out.print(...)
二.JSP指令
JSP编译指令:page指令:针对当前页面的指令(可以放在jsp文件的任何位置)
include指令:用于指定包含另外一个页面(在包含和被包含的文件中不能有相同名称的变量)
taglib指令:用于定义和访问自定义标签
JSP动作指令主要有七个:
jsp:forward:执行页面跳转,将请求的处理转发到下一个页面
jsp:param:用于传递参数,必须也其他支持参数的标签一起使用
jsp:include:用于动态的引入一个jsp文件
jsp:plugin:用于下载JavaBean或者Applet到客户端执行(基本不用)
jsp:useBean:创建一个javaBean实例
jsp:setProperty:设置javaBean实例的属性
jsp:getproperty:输出javaBean实例的属性
静态包含include指令VS动态包含jsp:include:
1.静态包含是将两个页面合并到一个.java源文件中,再编译执行得到结果,最后只有一个.java文件
动态包含如果包含的页面是静态页面(html)则和静态包含原理一样,如果包含的是动态页面,则先编译,再包含,会得到两个.java文件
2.静态包含不可以传递参数,动态包含可以传递参数
三.内置对象
JSP九大内置对象:request
response
pageContext
session
application
out
config
page
exception
response对象:用于响应客户端请求,向客户端输出信息。它封装了jsp产生的响应,并发送到客户端以响应客户端的请求。
常用方法:
方法名称 说明
sendRedirect() 将请求定位到一个不同的URL,即页面重定向
setHeader() 设置响应头信息
转发(服务器端跳转)一次请求VS重定向(客户端跳转)两次请求:
1.转发是在服务器端完成,因此称为服务器端跳转
重定向是在客户端完成,因此称为客户端跳转
2.转发后,地址栏不会改变
重定向后,地址栏会改变
3.转发只能在同一个WEB项目范围内进行
重定向可以在不同WEB项目内进行
Session:
常用方法
方法名称 说明
setAttribute(String key,Object value) 以key/value的形式保存对象值
getAttribute(String key) 通过key获取对象值
getMaxInactiveInterval() 获取session的有效非活动时间,以秒为单位
getId() 获取session对象的编号
invalidate() 设置session对象失效
removeAttribute(String key) 从session中删除指定名称(key)所对应的对象
四.对象的作用域:
名称 对象 说明
page范围 pageContext 在一个页面范围内有效,通过pageContext对象访问
request范围 request 在一个服务器请求范围内有效
session范围 session 在一次会话范围内容有效
application范围 application 在一个应用服务器范围内有效