• javaWEB与EL表达式


    EL表达式

    1. EL是JSP内置的表达式语言!
      * jsp2.0开始,不让再使用java脚本,而是使用el表达式和动态标签来替代java脚本!
      * EL替代的是<%= ... %>,也就是说,EL只能做输出!

    2. EL表达式来读取四大域
      * ${xxx},全域查找名为xxx的属性,如果不存在,输出空字符串,而不是null。
      * ${pageScope.xxx}、${requestScope.xxx}、${sessionScope.xxx}、${applicationScope.xxx}指定域获取属性!

    3. javaBean导航

      <%
        Address address = new Address();
        address.setCity("北京");
        address.setStreet("西三旗");
        
        Employee emp = new Employee();
        emp.setName("李小四");
        emp.setSalary(123456);
        emp.setAddress(address);
        
        request.setAttribute("emp", emp);
      %>
    
    <h3>使用el获取request域的emp</h3>
    ${requestScope.emp.address.street }<!-- request.getAttribute("emp").getAddress().getStreet() --><br/>


    4. EL可以输出的东西都在11个内置对象中!11个内置对象,其中10个是Map!pageContext不是map,它就是PageContext类型,1个项9个。
      * 我们已经学习了四个:pageScope,requestScope,sessionScope,applicationScope,


      * param对应参数,它是一个Map,其中key参数名,value是参数值,适用于单值的参数。
      * paramValues对应参数,它是一个Map,其中key参数名,value是多个参数值,适用于多值的参数。
      * header对应请求头,它是一个Map,其中key表示头名称,value是单个头值,适用于单值请求头
      * headerValues对应请求头,它是一个Map,其中key表示头名称,value是多个头值,适用于多值请求头
      * initParam获取<context-param>内的参数!

        <context-param>
          <param-name>xxx</param-name>
          <param-value>XXX</param-value>
      </context-param>
      <context-param>
          <param-name>yyy</param-name>
          <param-value>YYY</param-value>
      </context-param>

        ${initParam.xxx}

      * cookieMap<String,Cookie>类型,其中key是cookie的name,value是cookie对象 ${cookie.username.value}
      * pageContext:它是PageContext类型!${pageContext.request.contextPath}//获取request的contextPath方法。获取项目名

    =========================================

    EL函数库(由JSTL提供的)
      * 导入标签库:<%@ tablib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>

        String toUpperCase(String input)://把参数转换成大写
        String toLowerCase(String input)://把参数转换成小写
        int indexOf(String input, String substring)://从大串,输出小串的位置!
        boolean contains(String input, String substring)://查看大串中是否包含小串
        boolean containsIgnoreCase(String input, String substring)://忽略大小写是否包含
        boolean startsWith(String input, String substring)://是否以小串为前缀
        boolean endsWith(String input, String substring)://是否以小串为后缀
        String substring(String input, int beginIndex, int endIndex)://截取子串
        String substringAfter(String input, String substring)://获取大串中,小串所在位置后面的字符串
        substringBefore(String input, String substring)://获取大串中,小串所在位置前面的字符串
        String escapeXml(String input)://把input中“<”、">"、"&"、"'"、""",进行转义
        String trim(String input)://去除前后空格
        String replace(String input, String substringBefore, String substringAfter)://替换
        String[] split(String input, String delimiters)://分割字符串,得到字符串数组
        int length(Object obj)://可以获取字符串、数组、各种集合的长度!
        String join(String array[], String separator)://联合字符串数组!
  • 相关阅读:
    jQuery报 SyntaxError: expected expression, got '<'错误
    【转】JSP使用上传文件,并生产高清缩略图示例
    [转]Oracle中使用Rownum分页详细例子
    [转]oracle设计数据库应选择正确的数据类型
    [转]oracle数据类型和对应的java类型
    [转]如何判断js中的数据类型
    [转]理解JavaScript中的事件处理
    [转]关于jquery中html()、text()、val()的区别
    [转]jquery 点击表格变为input可以修改无刷新更新数据
    招聘网站需求分析
  • 原文地址:https://www.cnblogs.com/lxp503238/p/6562180.html
Copyright © 2020-2023  润新知