### JSP学习笔记详解 #### 一、JSP基础语法概览 JSP(Java Server Pages)是一种在服务器端执行的脚本语言,用于生成动态网页。它将HTML标记、JavaScript脚本和Java代码结合在一起,使开发者能够创建功能丰富的Web应用程序。 ##### 1.1 JSP的九种内置对象 JSP提供了九种内置对象,它们分别是:out、request、response、session、application、config、page、pageContext 和 exception。这些对象无需实例化即可在JSP页面中使用,极大地简化了编程过程。 1. **out** - 用于输出内容到客户端。 2. **request** - 包含客户端请求的信息,如参数和HTTP头。 3. **response** - 用于向客户端发送响应。 4. **session** - 维护与特定客户端的会话信息。 5. **application** - 全局应用范围的对象,用于共享数据。 6. **config** - 包含Servlet配置信息。 7. **page** - 当前JSP页面对应的Servlet实例。 8. **pageContext** - 提供对其他JSP内置对象的引用。 9. **exception** - 发生异常时可访问的异常对象。 ##### 1.2 四种属性范围 在JSP中,属性可以在四种不同的范围内有效: 1. **Page** - 属性仅在当前页面有效。 2. **Request** - 属性在一次请求周期内有效,即使请求被转发到另一个页面。 3. **Session** - 属性在一次会话期间有效,即用户登录到退出的整个过程中。 4. **Application** - 属性在整个应用的生命周期中有效,所有用户都能访问。 ##### 1.3 request对象的主要用途 1. 接收客户端发送的数据,如表单数据。 2. 设置字符编码,防止中文乱码问题。 3. 区分GET和POST请求,理解它们的不同特性。 - GET请求:数据在URL中可见,适合少量且安全的数据传输。 - POST请求:数据不显示在URL中,适合大量或敏感数据的传输。 4. 使用隐藏域传递参数,增强安全性。 5. 获取客户端和服务器的IP地址及端口号,用于日志记录或安全检查。 ##### 1.4 response对象的操作 response对象用于向客户端发送响应,其主要操作包括: 1. 设置响应头信息,如实现页面刷新或重定向。 2. 实现服务器端跳转和客户端跳转。 - 服务器跳转(`<jsp:forward>`):直接跳转到指定页面,保持request和session范围内的数据不变。 - 客户端跳转(`response.sendRedirect`):生成新的HTTP请求,原request和session范围内的数据可能丢失。 ##### 1.5 cookie的基本操作 Cookie是存储在客户端的小型文本文件,用于跟踪用户状态。基本操作包括创建、读取和删除Cookie。 - 创建Cookie时,需要设置其名称、值、过期时间等属性。 - 读取Cookie时,可以从`request.getCookies()`方法返回的数组中查找特定名称的Cookie。 - 删除Cookie实际上是指设置其过期时间为过去的时间,使其立即失效。 ##### 1.6 Session内置对象 Session用于存储与特定用户会话相关的信息。当用户访问网站时,服务器会创建一个Session对象,并将其ID保存在客户端的Cookie中,以便后续请求时识别同一用户。 ##### 1.7 application对象 application对象在整个应用的生命周期中都是可用的,常用于存储全局变量或共享数据。 ##### 1.8 config和web config对象包含了Servlet初始化时的配置信息,而web通常指的是ServletContext,用于访问应用级别的信息和资源。 ##### 1.9 分页实现 分页是处理大数据集时常见的需求,通过限制每页显示的记录数来提高用户体验和服务器性能。实现分页涉及计算总记录数、确定当前页码和每页显示的记录数,以及构建相应的SQL查询语句。 #### 二、JavaBean的基本应用 JavaBean是遵循一定编码规范的Java类,用于封装数据和行为,常用于JSP/Servlet架构中。编写JavaBean的要求主要包括: 1. 类需公开无参数构造函数。 2. 属性需提供getter和setter方法。 3. 遵循命名规则,如属性名为`firstName`,对应的getter方法为`getFirstName()`。 JavaBean的设计使得它可以轻松地被JSP页面或其他Java类所使用,从而提高了代码的复用性和维护性。
剩余7页未读,继续阅读
- 粉丝: 0
- 资源: 13
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助