• jsp jsp指令


    JSP

    HTMLjava语句拼接而成的文本,后缀名为.jsp

    1、Jsp翻译成servlet:先翻译,Tomcat将翻译后的文件放置在安装目录下(所有JSP页面本质上就是Servlet程序)

    2、编译为字节码

    (在JSP生命周期中,翻译和编译只进行一次)

    3、类加载——Web容器装载新生成的servlet

    4、创建Servlet实例

    5、jspInit()

    6、_jspServer()

    7、jspDestory()

    基础类型:不能被继承(final

    PageEconding:得到存储的类型

    JSP简化创建产生文本的Servlet

    JSP网页主要由元素和模板数据

    1、模板数据是JSP的静态部分

    2WEB容器不处理

    3、元素则是必须经由WEB容器解释

    4、元素都是以XML做为语法基础,并且大小写要一致

    web容器支持两种不同格式的JSP语法

    1、普通格式和XML兼容格式

    2、普通JSP语法是设计给开发者用的

    3XML兼容JSP语法是设计用来容易被开发工具使用的

    脚本元素,在模板数据块之间嵌入JAVA代码

    1、声明  <%声明%>

    2、Scriptlet <%代码%>

    3、脚本表达式 <%脚本表达式%>

    Scriptlet直接插入Java代码片断到模板数据中

    一个Scriptlet只能是Java程序

    必须符合Java的规范

    “<%”开始,以“%>”结束来包含程序代码段

    <%java程序代码%>

    导包:<%@page=com.lovo.user%>

    JSP内置对象:例如:打印 out session

    Out.print() = <%=  %> 同时打印

    声明变量:

    1、<%! 可以有变量和方法 %>   全局变量 必须以一个分号结尾

    2、<% 声明变量%>    局部变量

    JSP注释 <%--    -- %>

    HTML注释  <!--   -->  在页面的源代码会显示出来

    Java注释 /*  */

    JSP指令

    1.Page:整个页面

    2.Include:把文本中的文本静态地包含过去<%@ include file=” ” %>

     <jsp:directive.include file=””></jsp:include>

    动态包含(每个包含都会生成一个jsp

    <jsp:forward page=””></jsp:forward> 跳转到另一个页面

    3.Taglib

     

    Application:全局变量

    pageContext:当前页面的pageContext对象

     

    JAVA Web 的开发模式

    脚本元素:<% %>

    指令:<%@ %> page  include  public

    标准动作:<jsp:page = “”>

     

    模式:

    JSP+JavaBean

    <jsp:userBean id = “beanName” 变量名 scope=”page|request|session|application”>

    <jsp:userBean id=”stu” class=”com.my.bean.Student” scope=”request”/>

    <jsp:setProperty  property=”id” name=”stu” param=”userid”/>

    <jsp:getProperty  property=”id” name=”stu”/>

    MVC模型

    1、定义一系列Bean来表示数据

    2、使用一个Servlet来处理请求

    3、在Servlet中填充Bean

    4、在Servlet中,将Bean存储到请求、会话或者Servlet上下文中

    5、将请求转发到JSP页面

    6、在JSP页面中,从Bean中提取数据

    EL表达式

    ${表达式}——用对象.属性

    打印数据:1<%=  %>

      2out.print();

      3${对象.属性}

    EL的隐式对象:10

    EL运算符分为四种:

     1、属性和集合访问运算符

     2、算术运算符  ${person.age + 10} 得到年龄 (+-*/)

     3、关系运算符  ${person.age>20} 判断年龄 是否等于(==)

     4、逻辑运算符  (||&&)

    EL函数

    JSP标准标记库JSTL

    核心库(core)

    Prefix:前缀 url:地址

    例:<%@taglib prefix=”c” url=”http://java.sun.com/jsp/jstl/core”%>

    JSTL流程控制

    <c:if test=”${person.age>20}”>

    年龄大于20

    </c:if>

    if/else

    <c:choose>

      <c:when test=”${person.age>20}”>

    他的年龄大于20

      </c:when>

      <c:when test=”${person.age==20}”>

    他的年龄等于20  

      </c:when>

      <c:otherwise>

    他的年龄小于20  

      </c:otherwise>

    </c:choose>

    循环

    Step:隔多久开始打印

    Items:循环集合

    List<String>  list = new ArrayList<String>();

    List.add(“qwe”);

    List.add(“qee”);

    List.add(“wet”);

    request.setAttribute(“myList”,list);

    varStatus:变量的格式

    <c:forEach var=”i” begin=”1” end=”10” step=”2” items=”${myList}” varStatus=”sta”>

    Sta.index:下标

    Sta.count:第几次打印

    ${i}===${sta.index}====${sta.count}=====${sta.first}=====${sta.last}

    </c:forEach>

  • 相关阅读:
    关于Socket.IO
    关于js的执行与加载
    关于XSS
    关于浏览器的渲染过程
    关于高级前端的面试题
    关于js的设计模式(简单工厂模式,构造函数模式,原型模式,混合模式,动态模式)
    关于js的高级函数(惰性函数,函数柯里化,级联函数)
    关于map
    bzoj 2744: [HEOI2012]朋友圈 二分图匹配
    bzoj 3637: Query on a tree VI 树链剖分 && AC600
  • 原文地址:https://www.cnblogs.com/z1234/p/6131499.html
Copyright © 2020-2023  润新知