欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JSP知识点解析(二)

程序员文章站 2022-05-06 17:51:38
...

JSP知识点解析(二)

JSP生命周期就是从创建到销毁的整个过程,类似于servlet生命周期,区别在于JSP生命周期还包括将JSP文件编译成servlet。

JSP生命周期大致分为这几个阶段:

编译阶段:

servlet容器编译servlet源文件,生成servlet类
初始化阶段:

public void jspInit(){
  // 初始化代码
}

加载与JSP对应的servlet类,创建其实例,并调用它的初始化方法
执行阶段:

void _jspService(HttpServletRequest request,
                 HttpServletResponse response)
{
   // 服务端处理代码
}

调用与JSP对应的servlet实例的服务方法
销毁阶段:

public void jspDestroy()
{
   // 清理代码
}

调用与JSP对应的servlet实例的销毁方法,然后销毁servlet实例

中文编码问题

如果我们要在页面正常显示中文,我们需要在 JSP 文件头部添加以下代码:
<%@ page language=“java” contentType=“text/html; charset=UTF-8”
pageEncoding=“UTF-8”%>

JSP表达式常用方法

一个JSP表达式中包含的脚本语言表达式,先被转化成String,然后插入到表达式出现的地方。

由于表达式的值会被转化成String,所以您可以在一个文本行中使用表达式而不用去管它是否是HTML标签。

表达式元素中可以包含任何符合Java语言规范的表达式,但是不能使用分号来结束表达式。

JSP表达式的语法格式:

<%= 表达式 %>
比如

<%=user.getUsername() %>

加h1标签修饰
或者<%=user.getUsername() %>不修饰都可以

JSP注释

JSP注释主要有两个作用:为代码作注释以及将某段代码注释掉。

语法 	                     描述
<%-- 注释 --%> 	    JSP注释,注释内容不会被发送至浏览器甚至不会被编译
<!-- 注释 --> 	    HTML注释,通过浏览器查看网页源代码时可以看见注释内容
<\% 	            代表静态 <%常量
%\> 	            代表静态 %> 常量
\' 	                在属性中使用的单引号
\" 	                在属性中使用的双引号
JSP指令
JSP指令用来设置与整个JSP页面相关的属性。

JSP指令语法格式:

<%@ directive attribute=“value” %>

这里有三种指令标签:

指令 	                                描述
<%@ page ... %> 	定义页面的依赖属性,比如脚本语言、error页面、缓存需求等等
<%@ include ... %> 	包含其他文件
<%@ taglib ... %> 	引入标签库的定义,可以是自定义标签
JSP内置对象
JSP支持九个自动定义的变量,江湖人称隐含对象。这九个隐含对象的简介见下表:
对象 	                      描述
request 	      HttpServletRequest类的实例
response 	      HttpServletResponse类的实例
out 	          PrintWriter类的实例,用于把结果输出至网页上
session 	      HttpSession类的实例
application 	  ServletContext类的实例,与应用上下文有关
config 	          ServletConfig类的实例
pageContext 	  PageContext类的实例,提供对JSP页面所有对象以及命名空间的访问
page 	          类似于Java类中的this关键字
Exception 	      Exception类的对象,代表发生错误的JSP页面中对应的异常对象

下一节讲解三个指令的属性分别有哪些?