JSP = JAVA + HTML + JSP自身的东西
JSP的脚本
        <%!   %>        :翻译成Servlet中的成员内容. 定义变量,方法,类. -- 不建议.
        <%    %>        :翻译成Servlet中service方法内部的内容. 定义类,变量 
        <%=   %>        :翻译成Servlet中service方法中out.print();

<%@ 指令名称 属性名称="属性值" 属性名称="属性值" .....%>

JSP中三个指令:page指令,include指令,taglib指令
    * page指令
        * language        :jsp脚本中更实用过得语言,现在只能写java
        * contentType    :设置浏览器打开这个jsp的时候采用的字符集编码
        * pageEencoding :设置文件保存到本地硬盘,以及生成Servlet后,Servlet保存到硬盘的编码;
        * import         :在jsp中引入类对象,但是import可以出现多次
            * 设置全局的错误友好页面:
                * 在web.xml中设置:
                  <error-page>
                      <error-code>404</error-code>
                      <location>/404.jsp</location>
                  </error-page>
                  <error-page>
                      <error-code>500</error-code>
                      <location>/500.jsp</location>
                  </error-page>

jsp中的include指令:只是将jsp中包含其他的页面
    <%@ include file="logo.jsp" %>
    <%@ include file="menu.jsp" %>
    <h1>BODY部分</h1>
    <%@ include file="footer.jsp" %>
jsp的taglib指令
    * <%@ tabglib uri="标签的uri的路径" prefix="c" % > 需要导包

jsp的内置对象
    * jsp的内置对象:在jsp中可以直接使用的对象
    * jsp的9大内置对象
        * request                HttpServletRequest                getParameter(),setAttribute(String name,Object value);
        * response                HttpServletResponse                setHeader(String name,String value);getOutputStream();getWriter();
        * session                HttpSession                        setAttribute();getAttribute();
        * application            ServletContext                    setAttribute();getAttribute();
        * page                    Object                            toString();wait();
        * pageContext            PageContext                        setAttribute();getAttribute();
        * config                ServletConfig                    getServletName();getServletContext();
        * out                    JspWriter                        write(),print();
        * exception                Throwable                        getMessage(),getCause();             设置isErrorPage=”true”
    *        page内置对象                :真实对象是Object,就是JSP翻译成Servlet后的类的引用.
            out内置对象                :out和response.getWriter是不是同一个对象?区别是什么?
    *     不是out真实对象JspWriter ,response获得Writer是PrintWriter.

**     pageContext内置对象        :
        * 获得其他的8个内置对象    :编写通用性代码或者框架的时候.
        * 向JSP的四个域中存取数据    :
    jsp的四大域对象
        * pageScope                : 一个页面        pageContext     pageContext
         * requestScope            : 一次请求        request         HttpservletRequest
        * SessionScope            : 一次会话        session         Httpsession
        * ApplicationScope        : 应用范围        application        ServletContext
    jsp的动作标签(简化代码)
        * <jsp:forward="  ></forwoad>
        * <jsp:include >  *****静态包含和动态包含的区别?(<%@ include%>和<jsp:include>)
        *     <jsp:param />            :用于带有路径的标签下,传递参数.
            <jsp:useBean />            :用于在JSP中使用JavaBean.
            <jsp:setProperty />        :用于在JSP中向JavaBean设置属性的.
            <jsp:getProperty />        :用于在JSP中获得JavaBean的属性.
    
EL表达式
    jsp表达语言        为了使jsp看起来更加简单
    * 语法:${ EL表达式 }
    *     EL的功能:
        * 获取数据:(JSP的四个域)
        * 执行运算:
        * 操作WEB开发的常用的对象:
        * 调用Java中方法:--很少用.
    <h1>EL功能三:操作WEB开发常用的对象</h1>
        pageScope,requestScope,sessionScope,applicationScope - 获取JSP中域中的数据
        param,paramValues     - 接收参数.
        header,headerValues - 获取请求头信息
        initParam            - 获取全局初始化参数
        cookie                - WEB开发中cookie
        pageContext            - WEB开发中的pageContext.
    
    <h3>获取PageContext中的对象</h3>
            IP地址:${ pageContext.request.remoteAddr }
            工程路径:${ pageContext.request.contextPath }

JSTL:
    *jstl(jsp Standard Tag library ,jsp标准标签库)是一个不断完善的开放源代码jstl标签库
    jstl和EL结合,替换页面中<%%>
    * core(核心标签),fmt(国际化标签),xml(XML标签),sql(SQL    标签),fn(JSTL提供EL函数库)
            使用JSTL:
        * 引入JSTL的相关的jar包.
        * 在页面中引入标签库.<%@ taglib uri=”” prefix=””%>

JSTL的核心标签的用法
         * if
         * forEach
         * 
         JSTL提供的EL的函数库
            * ${ fn:contains("Hello World","Hello") }
            * ${ fn:length("HelloWorld") }
            * ${ fn:toLowerCase("ABCDE") }            * * * <c:forEach var="i" items='${ fn:split("a-b-* * c-d","-") }'>
                ${ i }
            * </c:forEach>

JSP&&EL&&JSTL的更多相关文章

  1. JavaEE之动态页面技术(JSP/EL/JSTL)

    动态页面技术(JSP/EL/JSTL) JSP技术 jsp脚本和注释 jsp脚本: 1)<%java代码%> ----- 内部的java代码翻译到service方法的内部 2)<%= ...

  2. JavaWeb之JSP & EL & JSTL

    JSP & EL & JSTL JSP Java Server Page 什么是JSP 从用户角度看,就是一个网页.从程序员角度看,就是一个Java类,它继承Servlet,所以可以说 ...

  3. jsp&el&jstl mvc和三层架构

    jsp:java在html中插入java 一.JSP技术 1.jsp脚本和注释 jsp脚本:(翻译成servlet,源码位置apache-tomcat-7.0.52\work\Catalina\loc ...

  4. 动态页面技术JSP/EL/JSTL

    本节内容: jsp脚本和注释 jsp运行原理 jsp指令(3个) jsp内置/隐式对象(9个) jsp标签(动作) EL技术 JSTL技术 JavaEE的开发模式 动态页面技术:就是在html中嵌入j ...

  5. 回锅的美食:JSP+EL+JSTL大杂烩汤

    title: Servlet之JSP tags: [] notebook: javaWEB --- JSP是什么 ? JSP就是Servlet,全名是"JavaServer Pages&qu ...

  6. request+response+jsp+el+jstl

    response: 1.设置响应行的状态码: response.setStatus(int sc); 2.设置response缓冲区的编码:response.setCharacterEncoding( ...

  7. JSP & EL & JSTL

    JSP 什么是JSP 用户角度看待 ,就是是一个网页,从程序员角度看待 ,是继承了servlet的java类,所以可以直接说jsp 就是一个Servlet. 为什么用JSP 用于显示一些动态数据,可以 ...

  8. javaweb(3)之JSP&EL&JSTL

    JSP(Java Server Page) 介绍 什么是 JSP ? 从用户角度看,JSP 就是一个网页. 从开发者角度看,它其实就是一个继承了 Servlet 的 java 类,所以可以直接说 JS ...

  9. 04 jsp,EL,JSTL

    jsp:Java Server Page  什么是jsp?从用户角度看待 ,就是是一个网页 , 从程序员角度看待 , 其实是一个java类, 它继承了servlet,所以可以直接说jsp 就是一个Se ...

  10. 《JavaWeb从入门到改行》JSP+EL+JSTL大杂烩汤

    title: Servlet之JSP tags: [] notebook: javaWEB --- JSP是什么 ? JSP就是Servlet,全名是"JavaServer Pages&qu ...

随机推荐

  1. java设计模式——单例设计模式

    /*设计模式:对问题行之有效的解决方式.其实它是一种思想. 1,单例设计模式.    解决的问题:就是可以保证一个类在内存中的对象唯一性. 必须对于多个程序使用同一个配置信息对象时,就需要保证该对象的 ...

  2. Spring boot精要

    1.自动配置:针对很多Spring应用程序的常见应用功能,SpringBoot能自动提供相关配置: 2.起步依赖:告诉SpringBoot需要什么功能,他就能引入需要的库: 3.命令行界面:这是Spr ...

  3. Oracle将一列值逗号拼接wm_concat函数

    --Oracle12c不再支持该函数,需要手动处理 --管理员登录授权给用户权限 GRANT CREATE SYNONYM TO c##sdic; / --创建 TYPE CREATE OR REPL ...

  4. 使用gdb调试python程序

    参考文章:https://mozillazg.com/2017/07/debug-running-python-process-with-gdb.html https://blog.alswl.com ...

  5. 多线程TcpServer

    多线程TcpServer自己的EventLoop只用来接收新连接(即TcpServer所属线程的EventLoop只监听listen fd),而新连接会用其他EventLoop来执行IO(即每个新Tc ...

  6. Swift 函数Count,Filter,Map,Reduce

    原创Blog,转载请注明出处 blog.csdn.net/hello_hwc 前言:和OC不同,Swift有非常多全局的函数,这些全局函数对简化代码来说非常实用.眼下Swift出到了2.0,只是我这篇 ...

  7. YII2 的授权(Authorization)

    说明:翻译本不是我应该做的,由于我的英语水平实在太差.但由于对YII的兴趣.所以也做一点.同一时候也能显示出我的胆量还是有的...希望不误导您. 由于这里MD语法的内容显示不全.您能够去这里看看. A ...

  8. 利用JFreeChart生成区域图 (5) (转自 JSP开发技术大全)

    利用JFreeChart生成区域图 (5) (转自 JSP开发技术大全) 14.5 利用JFreeChart生成区域图 通过JFreeChart插件只能生成普通效果的区域图,利用工厂类ChartFac ...

  9. 两个ajax写在一起报错

    这样做完导致的结果是:在谷歌浏览器页面正常显示,在火狐浏览器会不定期出现系统异常错误提示!最后分析原因是: 从异步请求的执行原理来看,我们知道当一个异步请求发送时,浏览器不会处于锁死.等待的状态,从一 ...

  10. luence优化速度

    一. .索引优化背景 很多网站都有自己的搜索引擎,比如百度,搜狗等等,而他们每天添加的索引量可想而知多么庞大,所以为了能提升用户的搜索响应速度,好的优化方案必不可少:当然对于一些网站的站内搜索也很有必 ...