一、JSP简介
1.什么是jsp
JSP全称是Java Server Pages,它和Servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术
JSP这门技术的最大的特点在于,写JSP就像写html,但:
相比html而言,(html只能为用户提供静态数据)JSP技术允许在页面中嵌套java代码,为用户提供动态数据。
相比servlet而言,jsp更容易对数据进行排版
2. JSP的组成
JSP使用Java脚本(代码片段),html,还有JSP动态标签构成的组成的
(JSP就是Servlet)
问题:为什么Jsp就是servlet!!!
jsp翻译的java文件:
publicfinal class _01_hello_jsp extends org.apache.jasper.runtime.HttpJspBase
implements org.apache.jasper.runtime.JspSourceDependent {
HttpJspBase类:
public abstract class org.apache.jasper.runtime.HttpJspBase
extends javax.servlet.http.HttpServletimplements javax.servlet.jsp.HttpJspPage {
结论: Jsp就是一个servlet程序!!!
servlet的技术可以用在jsp程序中
jsp的技术并不是全部适用于servlet程序!
3. JSP的特点:
1)jsp的运行必须交给tomcat服务器!!!!
tomcat的work目录: tomcat服务器存放jsp运行时的临时文件
2)jsp页面既可以写html代码,也可以写java代码。
(html页面不能写java代码 。而jsp页面可以写java代码)
4. JSP的执行过程
a)浏览器访问JSP页面,tomcat扫描到JSP文件,在%tomcat%/work把jsp文件翻译成java源文件(翻译)
b)Tomcat服务器把java源文件编译成class字节码文件(编译)
c)Tomcat服务器构造该jsp对象
d)Tomcat服务器调用该jsp类中的方法,返回内容显示到浏览器
注意:只在第一次访问时需要 a,b ,c,d四步骤
第二次到n次只需要执行 d步骤。当jsp文件修改或零时文件被删除了需要重新走翻译(a)和编译(b)的过程。
5. JSP的生命周期(重点)
Servlet的生命周期:
1)构造方法(第1次访问)
2)init方法(第1次访问)
3)service方法
4)destroy方法
Jsp的生命周期
1)翻译: jsp->java文件
2)编译: java文件->class文件(servlet程序)
3)构造方法(第1次访问)
4)init方法(第1次访问):_jspInit()
5)service方法:_jspService()
6)destroy方法:_jspDestroy()
二、JSP语法
1. JSP模板
JSP页面中的HTML内容称之为JSP模版元素。
JSP模版元素定义了网页的基本骨架,即定义了页面的结构和外观。
2. JSP表达式(expression)
语法:<%= 变量或表达式%>
作用:用于将程序数据输出到客户端
3. JSP的脚本(scriptlet)
语法:<% 多行java代码 %>
作用:相当与在JSP翻译的Servlet类中的_jspService方法中写可以执行的代码。
4)多个脚本片断中的代码可以相互访问,犹如将所有的代码放在一对<%%>之中的情况。如:out.println(x);
5)单个脚本片断中的Java语句可以是不完整的,但是,多个脚本片断组合后的结果必须是完整的Java语句,例如: