一,JSP的内置对象
1. JSP页面中的对象:包括JSP内置对象和用户创建的对象
2. JSP 内置对象是 Web 容器创建的一组对象
3. JSP 内置对象是可以直接在JSP页面使用的对象 ,无需使用“new”获取实例
4. JSP 内置对象的名称是 JSP 的保留字
JSP的运行机制
1. Web容器处理JSP文件请求需要经过3个阶段:
- 翻译(转义)阶段:JSP文件会被Web容器中的JSP引擎转换成Java源码
- 编译阶段:Java源码会被编译成可执行的字节码
- 执行阶段:容器接受了客户端的请求后,执行编译成字节码的JSP文件;处理完请求后,容器把生成的页面反馈给客户端进行显示
1. pageContext对象:提供了对JSP页面内所有的对象及名字
空间的访问——可以访问到本页所在的session、application的属性等
pageContext对象的常用方法:
- JspWriter getOut():返回当前客户端响应被使用的JspWriter流(out)
- HttpSession getSession():返回当前页中的HttpSession对象(session)
- Object getPage():返回当前页的Object对象(page)
- ServletRequest getRequest():返回当前页的ServletRequest对象(request)
- ServletResponse getResponse():返回当前页ServletResponse对象(response)
- void setAttribute(String name,Object value,int scope):设置属性及属性值
- Object getAttribute(String name):取属性的值
2. request对象的常用方法:
- String getParameter()
- 返回请求中的参数值,如果没有值则返回null
- Cookie[] getCookies()
- 返回包含所有cookie对象的数组
- HttpSession getSession()
- 返回当前请求中的HttpSession对象
- String getServletPath()
- 返回调用servlet在请求URL中的部分
- void setAttribute(String name,String value)
- 设置属性及属性值
- Object getAttribute(String name)
- 取属性的值
- String getRemoteAddr()
- 返回客户端IP地址
- String getRemoteHost()
- 返回客户端主机名称
- String getRemotePort()
- 返回客户端端口名称
- void setCharacterEncoding(String env)
- 设置请求中的字符集
3.response对象的常用方法:
- void sendRedirect(String location)
- 重定向到新的URL
- void addCookie(Cookie cookie)
- 在响应中添加cookie
- void setCharacterEncoding(String charset)
- 设置响应中的字符集
- String getContentType()
- 返回响应中MIME charset
4..out对象的常用方法:
- void print(String s)
- 在页面中打印出字符串信息
5.session对象的常用方法:
- void setAttribute(Strng name,Object value)
- 绑定一个session的对象
- Object getAttribute(String name)
- 返回session,如果没有返回null
- long getCreateTime()
- 返回session的创建时间
- String getId()
- 返回session的id
- void invalidate()
- 销毁当前session
- void removeAttribute(String name)
- 销毁指定的session内容
- void setMaxInactivateInterval(int interval)
- 设置当前session的失效时间
- long getMaxInactiveInterval()
- 获得失效时间
- long getLastAccessedTime()
- 获得最后一次访问时间
6.application对象的常用方法:
- void setAttribute(String name, Object object)
- 将属性绑定到给定的ServletContext对象上
- Object getAttribute(String name)
- 通过名称返回servlet 容器属性,如果没有对应名称返回null
7.config对象的常用方法:
String getInitParameter(String param)
返回指定参数的参数值
8.page对象:JSP页面对应Servlet的this对象
9.exception对象:是一个异常对象,当一个页面在运行
过程中发生了异常,就产生这个对象。如果一个JSP
页面要应用此对象,就必须把isErrorPage设为true,
否则无法编译。
二,参数的传递与接收
1. 参数传递
- 表单提交
- 重定向:URL?参数名1=参数值1&参数名2=参数值2
- request对象:setAttribute()方法
- session对象:setAttribute()方法
- pageContext对象:setAttribute()方法
2. 参数接收
- request对象:getParameter()方法
- request对象:getAttribute()方法
- session对象:getAttribute()方法
- pageContext对象:getAttribute()方法