zoukankan      html  css  js  c++  java
  • 咸鱼入门到放弃6--jsp<一>三指令

    JSP全称是Java Server Pages

    它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术。
    JSP这门技术的最大的特点在于,写jsp就像在写html,但它相比html而言,html只能为用户提供静态数据,而Jsp技术允许在页面中嵌套java代码,为用户提供动态数据。

    jsp对用户来说是个网页,对开发者来说是个servelet

    服务器在执行jsp的时候,首先把jsp翻译成一个Servlet,所以我们访问jsp时,其实不是在访问jsp,而是在访问jsp翻译过后的那个Servlet。当我们通过浏览器访问index.jsp时,服务器首先将index.jsp翻译成一个index_jsp.class,在Tomcat服务器的workCatalinalocalhost项目名orgapachejsp目录下可以看到index_jsp.class的源代码文件index_jsp.java

    一、JSP指令简介

      JSP指令(directive)是为JSP引擎而设计的,它们并不直接产生任何可见输出,而只是告诉引擎如何处理JSP页面中的其余部分。

      在JSP 2.0规范中共定义了三个指令:

    • page指令
    • Include指令
    • taglib指令

    JSP指令的基本语法格式:<%@ 指令 属性名="值" %>

    二、Page指令

      page指令用于定义JSP页面的各种属性,无论page指令出现在JSP页面中的什么地方,它作用的都是整个JSP页面,为了保持程序的可读性和遵循良好的编程习惯,page指令最好是放在整个JSP页面的起始位置。

    page指令

    • language

    表明jsp页面中可以写java代码

    • contentType

    其实即使说这个文件是什么类型,告诉浏览器我是什么内容类型,以及使用什么编码

        contentType="text/html; charset=UTF-8"
    ​
        text/html  MIMEType 这是一个文本,html网页
    • pageEncoding jsp内容编码

    • extends 用于指定jsp翻译成java文件后,继承的父类是谁,一般不用改。

    • import 导包使用的,一般不用手写。

    • session

    值可选的有true or false .

    用于控制在这个jsp页面里面,能够直接使用session对象。

    具体的区别是,请看翻译后的java文件 如果该值是true , 那么在代码里面会有getSession()的调用,如果是false : 那么就不会有该方法调用,也就是没有session对象了。在页面上自然也就不能使用session了。

    • errorPage

    指的是错误的页面, 值需要给错误的页面路径

    • isErrorPage

    上面的errorPage 用于指定错误的时候跑到哪一个页面去。 那么这个isErroPage , 就是声明某一个页面到底是不是错误的页面。

    三、include指令

    @include可以包含任意的文件,当然,只是把文件的内容包含进来。

      include指令用于引入其它JSP页面,如果使用include指令引入了其它JSP页面,那么JSP引擎将把这两个JSP翻译成一个servlet。所以include指令引入通常也称之为静态引入。

    语法:<%@ include file="relativeURL"%>,其中的file属性用于指定被引入文件的路径。路径以“/”开头,表示代表当前web应用。

     使用@include可以包含任意的内容,文件的后缀是什么都无所谓。这种把别的文件内容包含到自身页面的@include语句就叫作静态包含,作用只是把别的页面内容包含进来,属于静态包含。

    • 背后细节:

    把另外一个页面的所有内容拿过来一起输出。 所有的标签元素都包含进来。

    taglib

    <%@ taglib prefix="" uri=""%>

    uri: 标签库路径
    prefix : 标签库的别名  

     

  • 相关阅读:
    【剑指offer】10 矩形覆盖
    【剑指offer】09 变态跳台阶
    【剑指offer】08 跳台阶
    【剑指offer】07 斐波那契数列
    【剑指offer】06 旋转数组的最小数字
    【剑指offer】05 用两个栈实现队列
    【剑指offer】04 重建二叉树
    【剑指offer】03 从尾到头打印链表
    【剑指offer】02 替换空格
    【剑指offer】01 二维数组中的查找
  • 原文地址:https://www.cnblogs.com/lvoooop/p/10650251.html
Copyright © 2011-2022 走看看