Jsp页面中数据和方法声明
声明语法:<%! 声明表达式; %>
<%! int a; %> 定义整型变量
<%! float b,c=3.1f ; %>
注意:功能语句不能出现在声明区域中
细节二:
区分声明区域中的变和脚本区域中的变量
<%! int c=0; %> ç在声明区域中声明变量,整个jsp页面有效,每次刷新jsp页面并不销毁
<% int d=10; %> ç 在脚本区域中声明变量,刷新jsp页面会销毁重建
细节三:
page中指令的属性:
page指令中,除了import属性,其他属性在page指令中只能出现一次。
细节四:
下列类会默认载入到jsp页面,不需要特别声明:
Java.lang.*;java.servlet.*;java.servlet.jsp.*;java.servlet.http.*;
细节五:
include 属性只能引用静态页面(HTML和JSP),基本语法
<%@ include file=”被包含文件” %>
例如:
<%@ include file=”pageHead.jsp” %>
应用include指令时,要注意被包含文件不能是一个独立的页面,也就是不能有<html> 标签和<body>标签。
Jsp内置对象: out 、request、response、session、pageCounttext、application、config和exception
细节六:
<jsp:include/>动作标签的包含结果是“结果的合并”而不是内容的合并
细节七:
response主要功能和方法
- getWrite() 获得PrintWrite类的对象实例,实现向浏览器输出信息
- addCookie() 在客户端计算机磁盘上创建出Cookie对象实例,在Cookie对象实例可以保存客户端信息特征,然后采用request对象的getCookies()方法获取客户机所有Cookie对象
- addHeader() 添加HTTP头文件信息,将信息传送到客户浏览器中
- containsHeader() 判断指定名字的文件头是否存在,返回布尔型true / false
- setHeader() 设置指定名字HTTP头文件的值,若该值存在则覆盖
- sendRedirect() 重定向到由参数targetURL所指示的目标JSP页面或Servlet程序,不能向客户端输出信息
- setContentType() 在相应中可以设置内容的文档数据类型和格式
- setBufferSize() 设置Web容器的缓冲区大小,配合getBufferSize()方法返回该缓冲器信息
区分重定向与跳转方式的区别
- 请求转发过程中客户端浏览器只向server端产生一次请求,而重定向是两次;
- 请求转发时在浏览器的URL地址栏中的信息不会发生改变,仍然是原来的URL而重定向将会转向目标URL
使用HTTP请求转发:
使用转发由于只有一次请求,所以在一个页面的request.setAttribute 能够在跳转后的页面使用request.getAttribute获取其属性值
细节九:
内置对象request
request的对象的主要作用是接收客户端HTTP协议发送到服务器端请求数据
HTTPServletRequest接口常用方法和功能:
- getCookies() 获取保存客户端主机中的Cookie对象数组
- getSession() 获取会话session对象,如果还没有创建出session对象实例,系统会自动创建
- getHeader() 获取HTTP协议中定义的与请求头相关的某个指定名称的信息。
- getAttribute() 返回指定名称request作用域中的属性值,若没有返回null
- getMethod() 获取客户端向server端传送数据的方式 可以是post get delete put
- getParameter() 获取客户端传送给server端的指定名称的请求参数值
- getParameterNames() 获取客户端向server端传送所用请求参数的的参数名,返回的结果集是一个Enumeration枚举类对象实例
- getParameterValues() 获取指定参数名所请求的值,一般用于获取复选框等提交请求参数值
- getQuerySting 获取查询字符串,该查询字符串由客户端浏览器以get请求方式向server端传送
- getRequestURL() 获取发出请求字符串的客户端地址