JSP与EL&JSTL详解:指令、注释与标签库

需积分: 0 0 下载量 102 浏览量 更新于2024-08-05 收藏 7KB MD 举报
"这篇资源是关于EL(Expression Language)和JSTL(JavaServer Pages Standard Tag Library)的笔记,主要涵盖了JSP的基础知识,包括JSP的指令、注释、内置对象,以及MVC开发模式,EL表达式,JSTL标签,并简单提及了三层架构的概念。" ### JSP 指令 JSP 指令用于配置JSP页面,分为三种类型:page、include和taglib。 1. **page** 指令:用来配置整个JSP页面的属性。例如,`contentType`属性用于设置响应体的MIME类型和字符集,`import`用于导入Java类,`errorPage`指定错误页面,而`isErrorPage`则标记页面是否处理错误。 2. **include** 指令:用于包含其他资源文件,如HTML、JSP或其他静态或动态内容。这有助于代码重用和结构化布局。 3. **taglib** 指令:导入自定义或标准标签库,例如JSTL。通过指定`prefix`(前缀)和`uri`(统一资源标识符),我们可以定义如何在JSP页面中引用这些标签。 ### JSP 注释 JSP提供了两种注释方式: 1. **HTML注释**:`<!---->`,只适用于注释HTML代码。 2. **JSP注释**:`<%----%>`,可以注释JSP中的任何内容,包括脚本和标签。 ### JSP 内置对象 JSP提供9个内置对象,无需手动创建,可以直接使用: - **pageContext**:用于存储页面范围的数据,同时可以访问其他所有内置对象。 - **request**:`HttpServletRequest`实例,覆盖一次HTTP请求的所有资源(转发)。 - **session**:`HttpSession`,跨多个请求(一次会话)存储数据。 - **application**:`ServletContext`,全局共享数据,适用于所有用户。 - **response**:`HttpServletResponse`,负责向客户端发送响应。 - **page**:表示当前Servlet实例,类型为`Object`。 - **out**:`JspWriter`,用于输出数据到响应。 - **config**:`ServletConfig`,提供了关于Servlet的配置信息。 - **exception**:如果`isErrorPage`设为`true`,则表示当前页面处理异常,可以访问。 ### MVC 开发模式 MVC(Model-View-Controller)是一种常见的软件设计模式,用于分离业务逻辑、数据模型和用户界面。在Web开发中,JSP通常作为View,负责显示数据;Servlet或控制器处理请求和业务逻辑;Model则存储和处理数据。 ### EL 表达式 EL(Expression Language)是JSP 2.0引入的一种轻量级的脚本语言,用于简化数据访问。它允许开发者直接在JSP页面上通过表达式获取和设置数据,如`${var}`,减少了脚本元素的使用。 ### JSTL 标签 JSTL是一组标准标签库,包括核心标签库(core)、SQL标签库、XML标签库等,提供了更丰富的控制流和数据处理功能,使得JSP页面更加简洁,易于维护。例如,`<c:forEach>`用于循环遍历集合,`<c:if>`进行条件判断。 ### 三层架构 三层架构是一种软件设计模式,通常包括表现层(View)、业务逻辑层(Business Logic Layer,BLL)和数据访问层(Data Access Layer,DAL)。在Web开发中,JSP页面作为表现层展示信息,Servlet或控制器作为业务逻辑层处理请求和调用服务,数据库操作则在数据访问层完成。这种分层设计有助于提高代码的可维护性和可扩展性。