zoukankan      html  css  js  c++  java
  • Day01----jsp

    百闻不如一见,百说不如一练,实践是不变的真理。

    1、jsp基础

    1.1、jsp的执行过程:

    jsp文件  -->  翻译成Java文件  --> 编译成class字节码文件  -->  构造类对象  -->  调用方法  --> Tomcat的work目录下存放jsp运行时的临时文件

    1.2、jsp语法

    jsp表达式:<%=变量或表达式%> 向浏览器输出变量或表达式的结果

    jsp脚本:<%java代码%> 执行Java代码  原理:翻译到_jspService()方法中

    jsp声明:<%!变量或方法%> 声明jsp的成员变量或成员方法

    jsp注释:<%!-- jsp注释 --%> 注释jsp代码,不会翻译到Java文件,也不会执行

    1.3、jsp文件的编码问题

    pageEncoding:告诉Tomcat服务器使用什么编码翻译jsp文件(jsp --> java)

    contentType:Tomcat服务器发送给浏览器的数据编码(Tomcat服务器 -->  浏览器)

    1.4、异常错误相关

    errorPage:当前jsp页面的错误处理页面

    isErrorPage:指定当前页面是否为错误处理页面;false不是,则不能使用exception内置对象,反之可以

    全局处理页面

    <!-- 全局错误处理页面配置 -->
    <error-page>
         <error-code>500</error-code>
         <location>/page/500.jsp</location>
    </error-page>

    2、jsp的内置对象

    request;response;config;application;session;exception;page;out;pageContext

    2.1、out对象:out对象类型,JspWriter类,相当于带缓存的PrintWriter

    JspWriter:向jsp缓冲区写出内容(1、缓冲区满了;2、刷新缓存区;3、关闭缓存区;4、执行完毕jsp页面)

    PrintWriter:直接向浏览器写出内容

    3、jsp中的四个域对象:保存和获取数据,用于数据共享

    pageContext(page域);request;session;application(context域)

    4、EL表达式(替换jsp表达式):向浏览器输出域对象中的变量值或表达式计算的结果 ${ }

    输出基本数据类型变量:从四个域中获取:${name};指定域获取:${pageScope}

    5、jsp标签(替换jsp脚本)

    5.1、内置标签(动作标签):不需要在jsp页面导入标签

    转发标签:<jsp:forward />

    包含标签:<jsp:include />  包含与被包含的页面先各自翻译成Java源文件,然后运行时在合并在一起

    动态包含:<jsp:include page="被包含的页面" />;可以向被包含页面传递参数;先翻译在合并

    静态包含:<%@include file="被包含的页面">;不能向被包含页面传递参数;先合并在翻译

    6、JSTL标签:Java标准标签库

    核心标签库:C标签库;

    国际化标签:fmt标签库;

    EL标签库:fn函数库;

    7、自定义标签

    7.1、编写一个普通的Java类,继承SimpleTagSupport类,叫标签处理器类,覆盖doTag方法;在WEB-INF目录下建立tld文件,叫做标签库的声明文件;在jsp页面的头部使用taglib导入自定义标签库;在jsp中使用自定义标签

    7.2、自定义标签的生命周期

    SimpleTag接口

    SetJspContext(JspContext  context)  传入PageContext对象

    setParent(JspTag  tag)   传入父标签类对象

    setXXX(参数)  给属性赋值

    setJspBody(JspFrament  jspBody)  传入标签体内容

    doTag()  执行标签

  • 相关阅读:
    杭电-------2051Bitset(C语言)
    杭电-------2048不容易系列之(4)考新郎(C语言)
    杭电------2048神上帝以及老天爷(C语言写)
    杭电-------2047阿牛的eof牛肉串(C语言写)
    杭电-------2046骨牌铺方格(C语言写)
    杭电-------2045不容易系列之(3)—— LELE的RPG难题(C语言写)
    数据库索引总结(二)
    数据库索引总结(一)
    后端程序员必备的 Linux 基础知识
    不了解布隆过滤器?一文给你整的明明白白!
  • 原文地址:https://www.cnblogs.com/rosehuang/p/7262409.html
Copyright © 2011-2022 走看看