一.JSP简介
JSP全名为Java Server Pages(Java服务器页面),本质上是一个简化的Servlet,它是由Sun公司建立的一种动态网页技术标准。JSP技术是在传统的网页HTML文件中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(.jsp)。
JSP实现了HTML语法中的Java扩展(以 <%, %>形式)。JSP与Servlet一样,是在服务器端执行的。通常返回给客户端一个HTML文本。
JSP技术的特点:
1.跨平台:
JSP文件在执行时,首先由JSP引擎(即服务器,如Tomcat)解析生成.java文件,然后再由JVM执行。所以,JSP文件是由JVM间接执行的,而JVM是跨平台的,因此JSP文件就也可以跨平台执行。
2.业务与页面显示代码分离:
负责页面显示的Java代码直接写在JSP文件中,业务代码则写在Servlet中,实现了不同功能的代码分离
3.预编译:
用户访问第一次JSP页面,服务器对JSP页面代码进行一次编译,编译后的文件(.class)文件会在用户下次访问时继续使用,节约CPU资源
二.JSP运行原理:
JSP的工作模式是请求/响应模式,客户端首先发出HTTP请求,JSP程序收到请求后进行处理并返回结果
1.JSP文件的执行过程图:
2.JSP文件的执行步骤:
1.客户端发出请求,访问JSP文件
2.JSP容器将JSP文件转换为一个Java源文件(Java Servlet源程序)
3.Java源文件被编译执行生成相应字节码文件(.class),Servlet容器执行该字节码文件
3.JSP文件经编译生成的Java文件和字节码文件的位置:
index.jsp文件内容:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>跳转到主页</title>
</head>
<body>
<jsp:forward page="/page_common_index.action"></jsp:forward>
</body>
</html>
经Tomcat转换生成的index_jsp.java文件内容:
package org.apache