1.Jsp的概念
JSP,Java Server Page Java服务页面。
html页面: 用html语言写页面
Jsp页面: 用html语言写页面,用java语言写业务逻辑
Jsp的特点; 既可以写html代码,也可以写java代码
2.Jsp的作用
Jsp的主要作用是用java语言来开发动态资源的技术。
3.Jsp的运行
servlet: servet程序交给tomcat服务器运行
Jsp:jsp页面交给tomcat服务器运行。
jsp在%tomcat%/work目录下产生临时文件。
4.Jsp运行过程
浏览器: http://localhost:8080/day12/01.hello.jsp
第1次访问jsp时:
1)tomcat服务器把jsp文件翻译成java源文件(work目录下)_01_hello_jsp.java
2)tomcat服务器把java源文件编译成class字节码 _01_hello_jsp.class
3)tomcat服务器构造类对象(_01_hello_jsp)
4)tomcat服务器调用类对象的方法(_01_hello_jsp中的方法)
第n次访问jsp时:
1)tomcat服务器调用类对象的方法(_01_hello_jsp中的方法)只走第4步
注意:
1)当jsp文件内容发送变化,那么会重新翻译和编译jsp文件。
2)如果java源文件和class字节码删除了,第一次访问jsp时,也会重新翻译和编译。
5.Jsp开发的疑问
# 1.Jsp文件中的html代码和java代码是如何被执行的?
html代码: 通过out.write("内容"); 方法输出到浏览器
java代码: 原封不动拷贝到java源文件中被执行
#2.Jsp和servlet是什么关系?
public final class _01_hello_jsp extends org.apache.jasper.runtime.HttpJspBase
public abstract class org.apache.jasper.runtime.HttpJspBase extends javax.servlet.http.HttpServlet implements javax.servlet.jsp.HttpJspPage {
结论: Jsp就是一个servlet文件!!!
(servlet的知识点在jsp中全部适用,但jsp的部分知识点未必在servlet都能适用!!!)
Servlet的生命周期:
1)构造方法(第一次访问时)
2)init方法(第一次访问时)
3)service方法(第n次访问时)
4)destroy方法
Jsp的生命周期:
1)翻译成java源文件(第一次访问时)
2)java源文件编译成class字节码(已经是servlet类)(第一次访问时)
3)构造方法(第一次访问时)
4)_jspInit()方法(第一次访问时)
5)_jspService方法(第n次访问时)
6)_jspDestroy()方法
6.Jsp语法
6.1Jsp模板
Jsp文件中html代码部分就是模块
6.2Jsp表达式
语法: <%=变量或表达式%>
作用: 向浏览器输出变量的值或表达式计算的结果
注意:
1)其原理是使用out.print(name );方法向浏览器写出内容
2)结尾不能使用分号
6.3Jsp脚本
语法: <% java代码 %>
作用: 执行java代码
注意:
1)其原理是直接把java脚本代码翻译到java文件的_jspService方法中执行。
2)Jsp脚本可以穿插html代码混合使用
6.4Jsp注释
语法: <%-- jsp注释--%>
注意:
1)html注释是会被翻译到java源文件中,也会被执行
2)jsp注释是不会翻译到java源文件中,不会被执行。