1. jsp的本质就是servlet
2. jsp和servlet的分工:(就相当于服务员和厨师的作用一样)
jsp:(1)作为请求发起页面,如:显示表单和超链接(2)作为请求结束页面,如:显示数据
servlet:作为请求的数据处理环节
(1)获取jsp发送过来的请求(2)处理请求,得到处理后的数据(要和数据库打交道)(3)把结果保存到request中(4)转发到显示结果的jsp
3. jsp原理:(第一次惩罚)
(1)当jsp第一次被访问时,服务器会把jsp编译成java文件(实现Servlet接口的java文件)
(2)再编译成.class文件
(3)然后创建该类对象
(4)最后调用它的service方法
(5)第二次访问时直接调用service方法。
4. jsp编译成Servlet的过程
(1)页面属性编译
<%@ page language="java" contentType="text/html;charset=gb2312" %>
=>response.setContentType("text/html;charset=gb2312");
//通过 response响应设置返回客户端的页面属性
(2)HTML标签
<html>
<head>
<title>Show time</title>
</head>
..
</html>
out.write("\r\n");
out.write("<html>\r\n");
out.write("<head>\r\n");
out.write("<title>Show time</title>\r\n");
out.write("</head>\r\n");
out.write("<body> \r\n");
out.write("\tHello : \r\n");
out.write("\t");
(3)声明的对象
<%
SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd");
String str = format.format(new Date());
%>
=>
SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd");
String str = format.format(new Date());
(4)表达式
<%=str %>
=>
out.print(str ); //写即打印str变量的值