JSP概述

标签: jsp
13人阅读 评论(0) 收藏 举报
分类:

1.1JSP概述

1.1.1 JSP介绍
由sun公司提供的动态web资源的开发技术,看起来非常像html,但是可以在JSP页面中写java代码,所以JSP是一种动态web资源开发技术.

JSP本质上就是一个Servlet!

1.1.2JSP技术的由来
JSP的出现为了解决Servlet在响应时不适合向外输出页面的问题
(1)Servlet本质上是一段java代码,非常适合 处理逻辑,但是处理的结果不太 适合由Servlet向外输出(不适合输出完整的html页面)
(2)Html是用于开发网页的一门技术,可以用来展示数据。但是html开发出来的页面本质上就是一个文档(静态资源),无法展示 动态的数据。
(3)jsp非常适合编写html代码,适合作为响应页面向外输出,同时jsp里可以写java代码,也可以展示动态的数据
(4)jsp在第一次访问时,会被翻译成一个Servlet,对jsp访问后看到的页面,其实就是翻译后的Servlet在向外输出!

1.2JSP语法

1.2.1模版元素

    (1)JSP模版元素 :jsp页面中书写的HTML内容称作JSP的模版元素,在翻译过来的 Servlet 中直接被 out.write() 输出到浏览器页面上了

    (2)JSP表达式 `<%= java表达式 %>`其中可以书写常量,变量,表达式, 在翻译过来的Servlet中,计算java表达式的值后,被out输出到浏览器上

    (3)JSP脚本片断 `<% 若干java语句 %>` 在翻译过来的Servlet中,直接被复制粘贴到了对应的位置执行.
        在一个JSP页面中可以有多个脚本片断,在两个或多个脚本片断之间可以嵌入文本、HTML标记和其他JSP元素
        多个脚本片断中的代码可以相互访问,犹如将所有的代码放在一对`<%%>`之中的情况
        单个脚本片断中的Java语句可以是不完整的,但是,多个脚本片断组合后的结果必须是完整的Java语句
    (4)JSP声明  `<%! 若干java语句 %>` 在翻译过来的Servlet中会被放置到和Service方法同级的位置,变成了类的一个成员

    (5)JSP注释 
     `<%-- 注释的内容 --%>` 被jsp注释注释掉的内容,在jsp翻译引擎将jsp翻译成Servlet的过程中会被丢弃,在翻译过来的Servlet中没有这些信息
     `<%//java注释%>` java注释被当作jsp脚本片段被翻译到了Servlet中,在.java文件被翻译成.class文件的时候注释信息被丢弃
     `<!-- HTML注释 -->` html注释被当作模版元素输出到了浏览器上,浏览器认识html注释不予显示

    (6)JSP指令`<%@ 指令名称 属性=... ...%>`
       JSP指令(directive)是为JSP引擎而设计的,它们并不直接产生任何可见输出,而只是告诉引擎如何处理JSP页面中的其余部分

        page指令


        Include指令:
            include指令用于引入其它JSP页面,如果使用include指令引入了其它JSP页面,那么JSP引擎将把这两个JSP翻译成一个servlet
            只有include指令进行的包含是静态包含,其他的包含都是动态包含

        taglib指令

        (7)JSP九大隐式对象:在翻译过来的ServletService方法自动帮我们前置定义的九个对象,可以在jsp页面中直接使用
      page
      confing
      application
      response
      request
      session
      out
      exception
      pageContext


      out
        相当于是response.getWriter得到PrintWriter
        out和response.getWriter获取到的流不同在于,在于这个out对象本身就具有一个缓冲区.利用out写出的内容,会先缓冲在out缓冲区中,直到out缓冲区满了或者整个页面结束时out缓冲区中的内容才会被写出到response缓冲区中,最终可以带到浏览器页面进行展示
        page指令中的
         [buffer="none | 8kb | sizekb" ]可以用来禁用out缓冲区或设置out缓冲区的大小,默认8kb 
         [ autoFlush="true | false"]用来设置当out缓冲区满了以后如果在写入数据时out如何处理,如果是true,则先将满了的数据写到response中后再接受新数据,如果是false,则满了再写入数据直接抛异常 

        在jsp页面中需要进行数据输出时,不要自己获取response.getWriter,而是要使用out进行输出,防止即用out又用response.getWriter而导致输出顺序错乱的问题

      **pageContext**
        (1)可以作为入口对象获取其他八大隐式对象的引用
            getException方法返回exception隐式对象 
            getPage方法返回page隐式对象
            getRequest方法返回request隐式对象 
            getResponse方法返回response隐式对象 
            getServletConfig方法返回config隐式对象
            getServletContext方法返回application隐式对象
            getSession方法返回session隐式对象 
            getOut方法返回out隐式对象
        (2)域对象,四大作用域的入口,可以操作四大作用域中的域属性

            作用范围: 当前jsp页面
            生命周期: 当对jsp页面的访问开始时,创建代表当前jsp的PageContext,当对当前jsp页面访问结束时销毁代表当前jsp的pageContext
            作用:在当前jsp中共享数据

JSP标签技术

   在jsp页面中写入大量的java代码会导致jsp页面中html代码和java代码混杂在一起,会造成页面非常的混乱,难于维护
   于是在JSP的2.0版本中,sun提出了JSP标签技术,推荐使用标签来代替JSP页面中java代码,并且推荐,JSP2.0以后不要在JSP页面中出现任何一行java代码。

1.4.1EL表达式

EL表达式在JSP中可以非常方便的获取数据,可以代替JSP页面中的JSP表达式(<%= %>)
基本结构: ${ 表达式 }
EL只能获取不能设置!!!
EL只能获取不能遍历!!!
EL表达式提供了如下功能:
(1)EL可以获取常量/变量(必须存入域中)/表达式的值
(2)EL可以获取域中的数组或集合中的数据
(3)EL可以获取域中的Map集合中的数据。

1.4.2JSTL标签库

   JSTL标签库是为JavaWeb开发人员提供了一套标准通用的标签库,JSTL标签库和EL配合使用取代JSP中大部分的Java代码.
   在使用JSTL标签库提供的标签之前,必须在JSP中通过taglib指令引入JSTL标签库(如果缺少JSTL库相关的jar,还需要提前导入jar包)
   1.导入JSTL的jar包
   2.引入JSTL库  

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

其中常用的标签如下:
1、 – 往四大作用域中添加域属性,或者修改四大作用域中已有的属性
(1)往四大作用域中添加一个域属性

查看评论

JSP技术概述

使用JSP技术构建网页的大体处理流程:
  • u010378878
  • u010378878
  • 2016-05-04 22:01:18
  • 1361

JSP介绍

什么是JSP?   JSP全名为Java Server Pages。它是由SUN公司在1996年6月发布的用于开发动态Web应用的技术.JSP是基于Java Servlet的Web开发技术。其根本...
  • Aquarlus
  • Aquarlus
  • 2016-08-12 14:16:49
  • 3838

JSP技术简介及特点

  • 2018年04月14日 21:34
  • 21KB
  • 下载

Jsp技术介绍

前言 虽然在前后端分离的大潮流中,jsp技术已经是很少被使用了,其中一个重要的原因是jsp展示页面的时候过慢。但是,作为sun官方推出的技术,其中的思想和今天的前端技术十分的相似,很多前端框架都是基...
  • yanmiao0715
  • yanmiao0715
  • 2018-03-25 09:49:57
  • 110

JSP技术简介

    JavaServer PagesTM (JSP)技术为创建显示动态生成内容的Web页面提供了一个简捷而快速的方法。JSP技术的设计目的是使得构造基于Web的应用程序更加容易和快捷,而这些应用程...
  • jlusdy
  • jlusdy
  • 2005-05-16 13:00:00
  • 1482

JSP技术介绍

  • 2017年09月03日 15:06
  • 883KB
  • 下载

jsp简介

JSP全称Java Server Pages,是一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码。标签通常以结束。 JSP是一种Java servlet,主要用于实现...
  • m0_37374707
  • m0_37374707
  • 2017-05-21 15:04:03
  • 706

Jsp技术总结

这节我们总结一下Jsp的相关技术。 1. 什么是JSP         JSP即Java Server Pages,它和servlet技术一样,都是sun公司定义的一种用于开发动态web资源的技术。该...
  • eson_15
  • eson_15
  • 2016-04-29 10:45:40
  • 10971

JSP技术

JSP简介       JSP(Java Server Pages)是由Sun公司倡导、多家公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.h...
  • koches
  • koches
  • 2012-07-25 16:45:11
  • 12977

jsp技术简介

  • 2011年12月21日 12:33
  • 248KB
  • 下载
    个人资料
    持之以恒
    等级:
    访问量: 491
    积分: 346
    排名: 23万+
    文章存档
    最新评论