一、JSP的语法

  

1、JSP的模板元素:(先写HTML)

   就是JSP中的那些HTML标记

   作用:页面布局和美化

2、JSP的Java脚本表达式:

   作用:输出数据到页面上

   语法:<%=表达式%>(实际上就是调用输出流打印到页面上)

3、JSP中的Java脚本片段:(实际开发中,应做到JSP中不能出现一行Java脚本片段)

   作用:书写Java代码逻辑

   语法:<%
         语句1;
         语句2;
      %>

     语句为Java语句

   原理:其中的语句会原封不动的被服务器翻译到对应的Servlet的service方法中。

4、JSP的声明:(了解其原理)

   作用:定义类的成员

   语法:<%!
         Java代码
      %>

5、JSP的注释:

   作用:注释Java脚本代码

   语法:<%--这是注释--%>

   Jsp注释在客户端查看源文件无法看到,而Html注释在客户端可以看到

二、JSP的指令:给JSP引擎用的(服务器用的)

基本的语法格式:<%@ 指令名称 属性1="值1" 属性2="值2" ....%>
作用:告诉服务器,该如何处理JSP中除了指令之外的内容的。

1. page
  作用:定义JSP页面的各种属性
  属性: language:指示JSP页面中使用脚本语言。默认值java,目前只支持java。

      extends:指示JSP对应的Servlet类的父类。不要修改。

      *import:导入JSP中的Java脚本使用到的类或包。(如同Java中的import语句)
            JSP引擎自动导入以下包中的类:
                      javax.servlet.*
                      javax.servlet.http.*
                      javax.servlet.jsp.*
           注意:一个import属性可以导入多个包,用逗号分隔。

      *sessioin:指示JSP页面是否创建HttpSession对象。默认值是true,创建

      *buffer:指示JSP用的输出流的缓存大小.默认值是8Kb。

      autoFlush:自动刷新输出流的缓存。

      isThreadSafe:指示页面是否是线程安全的(过时的)。默认是true。
             true:不安全的。
             false:安全的。指示JSP对应的Servlet实现SingleThreadModel接口。

      *errorPage:指示当前页面出错后转向(转发)的页面。
            目标页面如果以"/"(当前应用)就是绝对路径。

            配置全局错误提示页面:
            在web.xml中,两种花方式:
            <error-page>
                <exception-type>java.lang.Exception</exception-type>
                <location>/error.jsp</location>
            </error-page>

            以及
            <error-page>
                <error-code>404</error-code>
                <location>/404.jsp</location>
            </error-page>

            
      *isErrorPage:指示当前页面是否产生Exception对象。

      *contentType:指定当前页面的MIME类型。作用与Servlet中的response.setContentType()作用完全一致

      *pageEncoding:通知引擎读取JSP时采用的编码(因为要翻译)
              还有contentType属性的作用。

      *isELIgnored:是否忽略EL表达式。${1+1}。默认值是false。

page指令最简单的使用方式:<%@ page pageEncoding="UTF-8"%>

2. include(静态包含,开发中能用静的不用动的)

作用:包含其他的组件。

语法:<%@include file=""%>file指定要包含的目标组件。路径如果以"/"(当前应用)就是绝对路径。

原理:把目标组件的内容加到源组件中,输出结果。容器不必先生成被包含jsp页面或servlet的class文件,而是直接将内容添加到源组件中

动态包含:

采用动作元素:<jsp:include page=""/>路径如果以"/"(当前应用)就是绝对路径。

原理:先生成被包含jsp页面或servlet的class文件,再添加到源组件中

3. taglib

作用:引入外部的标签

语法:<%@taglib uri="标签名称空间" prefix="前缀"%>

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

三、JSP常用的动作元素

<jsp:include/> 包含

<jsp:forward/>  请求转发

<jsp:param/>:在包含和转发时,利用该标签传递请求参数

JSP中操作JavaBean的动作元素:

1. jsp:useBean

  作用:用于在指定域范围内查找指定名称的JavaBean对象,找到了就直接使用;没有找到,创建一个,并放到指定的域范围内。

  属性:
    id:必须的。JavaBean的名称

    class:JavaBean的完整类名

    scope:域范围。默认是page范围。可选值:page request session application

  注意:如果该标签有主体内容,只在创建新对象时才会执行。

2. jsp:setProperty(必须先使用useBean)

  作用:调用JavaBean的setter方法。还能自动类型转换,仅限基本类型

  属性:
    property:必须的。属性名称。比如setName,名称是name。
         可以使用通配符*。使用前提是请求参数的名称与属性的名称完全一致。

    name:必须的。哪个对象的?即jsp:useBean中的id的取值。

    value:属性的取值。支持直接量;支持表达式(<%=表达式%>)。

    param:请求参数名

3. jsp:getProperty(必须先使用useBean)

  作用:调用JavaBean的getter方法。

  property:必须的。属性的名称。比如getName,名称是name。

  name:必须的。哪个对象的?即jsp:useBean中的id的取值。

转载于:https://www.cnblogs.com/z941030/p/4764951.html

Jsp语法、指令及动作元素相关推荐

  1. JSP include指令与动作的 相应时间对比

    JSP include指令与动作的 相应时间对比 首先是要加载的页面: <%@ page language="java" import="java.util.*&q ...

  2. Jsp Include指令 与动作区别

    在说include指令和动作之前,我们先来了解下 jsp的生命周期. jsp生命周期 分为5个阶段 解析 servle容器检查页面语法 翻译将jsp编译成servlet源文件 编译 servlet容器 ...

  3. Java遇见HTML——JSP篇之JSP指令与动作元素

    一.include指令(如:<%@include file="..."%> ) 示例: Date.jsp 1 <%@page import="java. ...

  4. JSP指令与动作元素-foward动作

    foward动作: 语法: <jsp:forward page="URL"/> 等同于: request.getRequestDispatcher("/url ...

  5. JSP include指令和include动作的区别

    include指令 JSP可以通过include指令来包含其他文件.被包含的文件可以是JSP文件.HTML文件或文本文件.包含的文件就好像是该JSP文件的一部分,会被同时编译执行. Include指令 ...

  6. 22.jsp动作元素

    JSP 动作元素 与JSP指令元素不同的是,JSP动作元素在请求处理阶段起作用.JSP动作元素是用XML语法写成的. 利用JSP动作可以动态地插入文件.重用JavaBean组件.把用户重定向到另外的页 ...

  7. Javaweb(jsp技术) —— ——jsp动作元素

    jsp动作元素 文章目录 jsp动作元素 前言 一.JSP动作元素 1.1include动作元素 1.2forward动作元素 1.3阶段案例:传智书城JSP页面 前言 一本书中这样写到:一个能靠自己 ...

  8. [转]JSP常用指令

    为什么80%的码农都做不了架构师?>>>    一.指令元素 1.page指令 import session contentType buffer isTreadSafe info ...

  9. JSP include指令

    JSP include指令与jsp:include动作元素区别 JSP include指令 JSP include 指令用于通知 JSP 引擎在翻译当前 JSP 页面时,将其他文件中的内容合并进当前 ...

最新文章

  1. CentOS5.6下安装Oracle10G软件 【保留报错经验】
  2. MIT黑科技:“不开卷也有益”,计算机不翻书就能读完一本书
  3. webService 远程访问不了的问题
  4. python包与模块导入
  5. SageMaker使用托管容器训练本地网络模型
  6. 【限时免费报名】MongoDB原厂和阿里专家喊你来训练营上课啦!
  7. spring-boot-autoconfigure-xx.jar核心注解
  8. 集群没有leader_ZooKeeper 集群中 Leader 与 Follower 的4种数据同步策略
  9. 2018年,你想从InfoQ获取什么内容?丨Q言Q语
  10. LeetCode 1620. 网络信号最好的坐标
  11. 我的家庭私有云计划-10
  12. 小记一次考题:生成包含大写字母、小写字母、数字的8位密码
  13. mysql删除check约束_高级SQL特性——约束与索引
  14. 常见的web前端编程软件
  15. 按键精灵手机助手学习笔记
  16. 项目实战:Qt5/C++:QT象棋【初版】
  17. Codeforces--1311A--Duff and Weight Lifting
  18. 图片如何转化为pdf格式?
  19. 一文读懂配置管理(CM)
  20. 树莓派系统安装和环境配置

热门文章

  1. 滴滴这车值不值得上?前Google全球技术总监郄小虎说来来来
  2. 读取脑磁波,神经网络知道你在「犹豫不定」
  3. 实录 | 旷视研究院详解COCO2017人体姿态估计冠军论文(PPT+视频)
  4. 曾鸣:区块链中没有绝对的“去中心化”
  5. Django如何让未登录的用户自动跳转至登录页
  6. 大数据力推产业转型升级
  7. web前端开发 —— 一个对联效果
  8. 【交往智慧】002.和优秀的人接触
  9. 静态路由实现负载均衡和高可用
  10. ArcGIS10.2安装教程