jsp简介

一、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语句,例如:

你可能感兴趣的:(jsp简介)