一.什么是 jsp,它有什么用?
jsp的全程是java server pages。java 的服务器页面
jsp的主要作用是代替Servlet程序回传html页面数据
二.jsp的本质是什么
jsp 页面本质上是一个 Servlet 程序
当我们第一次访问 jsp 页面的时候。Tomcat 服务器会帮我们把 jsp 页面翻译成为一个 java 源文件。并且对它进行编译成 为.class 字节码程序。我们打开 java 源文件不难发现其里面的内容是
三.jsp的三种语法
jsp头部的page指令
jsp的page指令可修改jsp页面中的一些重要属性或者行为
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
language属性 表示jsp翻译后是什么语言文件。暂时只支持java。
contentType属性 表示jsp返回的数据类型是什么。也是源码中response.setContentType()参数值
pageEncoding属性 表示当前jsp页面文件本身的字符集。
import属性 跟java源代码中一样。用于导包,导类。
给out输出流使用属性
autoFlush 设置当out输出流缓冲区满了之后,是否自动刷新冲级区。默认值是true。
buffer属性 设置out缓冲区的大小。默认是8kb
jsp中的常用脚本
声明脚本
声明的脚本的格式是:<%! 声明java代码 %>
作用:可以给jsp翻译出来的java类定义属性和方法甚至是静态代码块。内部类等
<%! private Integer id; private String name; private static Map<String,Object> map; %> <%--2、声明 static 静态代码块--%> <%! static { map = new HashMap<String,Object>(); map.put("key1", "value1"); map.put("key2", "value2"); map.put("key3", "value3"); } %> <%--3、声明类方法--%> <%! public int abc(){ return 12; } %>
表达式脚本
表达式脚本的格式是:<%=表达式%>
表达式脚本的作用是:的jsp页面上输出数据。
表达式脚本的特点:
1、所有的表达式脚本都会被翻译到_jspService()方法中_
2、表达式脚本都会被翻译成为out.print()输出到页面上
3、由于表达式脚本翻译的内容都在_jspService()方法中,所以_jspService()方法中的对象都可以直接使用。
4、表达式脚本中的表达式不能以分号结束。
实例