JSP学习

来源:互联网 发布:银联数据应届生待遇 编辑:程序博客网 时间:2024/06/02 07:01

JSP概述

全称是Java Server Pages,其本质就是Servlet。

JSP执行原理

翻译 –> 编译 –> 执行(1.jsp –> _1_jsp.java –> _1_jsp.class)

这里写图片描述

JSP的最佳实现


Servlet:控制器.重点编写java代码逻辑(获取表单数据, 处理事务逻辑, 分发转向)
JSP:代码显示模块,重点是显示数据

JSP的基本语法

1. JSP模板元素    网页的静态内容。如:html标签和文本。2.JSP的脚本    2.1、小脚本<% java代码 %>    2.2、表达式<%=2+3 %>等价于out.print(2+3);    2.3、声明         <% ! %>表示在类中定义全局变量和静态块3.JSP注释JSP注释:<%--  被注释的内容--%>  特点:安全,省流量网页注释:<!--  被注释的内容->  特点:不安全,费流量

JSP的3个指令

page指令

1.import和java中的import是一样的    <%@page import="java.util.Date, java.util.List"%>    JSP会自动的导入相应的包2.session:是否会自动创建Session对象,默认是true3.buffer:JSP中有javax.servlet.jsp.JspWriter输出字符流。设置输出数据的缓存大小,默认是8kb.4.errorPage:如果页面有错误,跳转到指定的资源下。    errorPage="/uri",如果写"/"表示当前应用的目录下,为绝对路径。如果不写"/",则表示相对路径。5.isErrorPage : 是否创建throwable对象,默认是false.6.contextType:等同于request.setContextType("text/html;charset=UTF-8");7.pageEncoding:告诉JSP引擎要翻译的文件使用的编码。8.isELIgnored:是否支持EL表达式,默认是false.

Include指令

静态包含:把其他资源包含到当前界面中<%@include file="/2.jsp"%>动态包含:<jsp:include page="/2.jsp"></jsp:include>二者区别:前者:在翻译时就把两个文件合并后者:不会合并文件,当代码执行到include时,才包含另一个文件的内容

taglib指令

作用:在JSP中导入JSTL标签库。替换jsp中的java代码片段<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

JSP的6个动作

<jsp:include>动态包含<jsp:forward>请求转发<jsp:param>设置请求参数<jsp:useBean>创建一个对象,相当于new<jsp:setPorety>给指定的对象属性赋值,相当于setter方法<jsp:getPorety>去除指定的对象的属性的值,相当于getter方法

JSP的9大隐式对象

这里写图片描述

JSP重点的4大域对象

pageContext(称之为page域)     存放的数据在本页面有效,开发时使用较少servletContext(称之为application域)    存放的数据在整个应用中都有效,因范围太大,应避免使用。request(称之为request域)    存放的数据在一次请求(转发)中有效,较常使用session(称之为session域)    存放的数据在一次会话中有效,使用的比较多。

EL(表达式语言)

这里写图片描述

隐式对象

这里写图片描述

JSTL

1.什么是JSTL?

  (JavaServerPages Standard Tag Liberary)JSP标准标签库

2.JSTL的作用?

使用JSTL实现JSP页面中的逻辑处理。如判断、循环等。

3.使用JSTL

在JSP中导入JSTL标签库。替换jsp中的java代码片段<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
原创粉丝点击