b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

共享和总结JSP页面技术的EL表达式

电脑杂谈  发布时间:2020-06-06 14:06:36  来源:网络整理

el表达式double转int_string转int数组_el表达式string转int

本文主要介绍Java中JSP页面技术中EL表达式的概念的使用以及语法的使用等,有需要的朋友可以参考

一个,概念

表达式语言(Expression Language)或EL表达式,称为EL,是Java中的一种特殊的通用编程语言,它是从JavaScript和XPath借来的. 主要功能是将Java Web应用程序嵌入Web页面(例如JSP)中,以访问页面范围和不同范围内的对象,获取对象属性的值,或执行简单的操作或判断操作. EL获得特定数据后,将自动转换数据类型.

主要功能:

1)获取数据

EL表达式主要用于替换JSP页面中的脚本表达式<%=%>,以检索Java对象并从各种类型的Web域中获取数据. (某个Web域中的对象,javabean的访问属性,访问列表集合,访问地图集合,访问数组)

2)执行计算

使用EL表达式,您可以在JSP页面中执行一些基本的关系运算,逻辑运算和算术运算,以在JSP页面中完成一些简单的逻辑运算. $ {user == null}

3)获取用于Web开发的通用对象EL

该表达式定义一些隐式对象. 使用这些隐式对象,Web开发人员可以轻松地获取对Web上常用对象的引用,以获取这些对象中的数据.

4)调用Java方法

EL表达式使用户可以开发自定义的EL函数,以通过JSP页面中的EL表达式来调用Java类方法.

注意: <%@ pageisELIgnored =” true”%>表示是否禁用EL语言,TRUE表示禁止. FALSE表示不禁止. 在JSP2.0中启用了默认的EL语言

第二,语法

以“ $ {”开头,以“}”结尾:

$ {EL表达式}

示例:

${ str } //输出字符串变量str的值
${ 1 + 2 } //输出1+2的结果
${ user.name} //输出user对象的name属性 访问对象user的getName()方法以得到name成员的值。
${user[“name”] } //同上
${ sessionScope[“user”].name } //同上
${list[0]} //访问list对象的第一项。
${map[“key”]} //访问map指定键的值。

三,请接线员

EL提供了两个运算符. 和[]访问数据:

. 访问Bean属性或映射条目,例如: $ {user.name}

el表达式double转int_string转int数组_el表达式string转int

[]可以访问集合或数组的元素,以及Bean的属性. 例如: $ {arr [0] .name}

异同:

相同: 可用于访问对象的属性

差异: 当要访问的属性名称包含某些特殊字符时,例如. 要么?或字母或数字以外的其他符号,必须使用[],例如user.my-name应该为{user [“ my-name”]}

四个运算符:

●有五个算术运算符: +,-,*,/或p,%或mod

●有六个关系运算符: ==或eq,!=或ne,<或lt,>或gt,<=或le,> =或ge

●共有三个逻辑运算符: &&或and,||或,或!是否

●还有其他三个运算符: 空运算符,条件运算符,()运算符

五个隐藏的对象

JSP EL支持下表中列出的隐藏对象:

您可以在表达式中使用这些对象,如变量.

按功能分组如下:

1)访问参数值:

param: 可以获得与单个请求参数名称相对应的值. 例如: $(param.name)等同于request.getParameter(名称).

paramValues: 可以根据参数名称获得相应的字符串数组. 例如: $ {paramvalues.name)等同于request.getParamterValues(name).

注意: param对象返回一个字符串,而paramValues对象返回一个字符串数组.

2)访问标头信息

header: 您可以在请求标头信息中获取相应的单个字符串标头值. 表达式header.name等同于request.getHeader(name). 如{header [“ user-agent”]}. 可以打印出用户代理标题.

el表达式double转int_string转int数组_el表达式string转int

headerValues: 将请求标头名称映射到值数组. 例如,$ {headerValues.name}等同于request.getHeaderValues(name).

注意: 标头对象返回一个值,headerValues返回一个字符串数组.

3)访问有关用户要求或页面的其他详细信息

pageContext:

pageContext.request |获取请求对象{pageContext.session} |获取会话对象

pageContext.request.queryString |获取请求参数字符串{pageContext.request.requestURL} |获取请求URL,但不包括请求参数字符串

pageContext.request.contextPath |服务的Web应用程序的名称{pageContext.request.method} |获取HTTP(GET,POST)的方法

pageContext.request.protocol |获取所使用的协议(HTTP / 1.1el表达式string转int,HTTP / 1.0){pageContext.request.remoteUser} |获取用户名

pageContext.request.remoteAddr |获取用户的IP地址{pageContext.session.new} |要确定会话是否是新会话,所谓的新会话意味着客户端刚刚生成了该会话,而客户端尚未生成用了

pageContext.session.id |获取会话ID {pageContext.servletContext.serverInfo} |获取主机的服务信息

4)访问范围不同的变量,例如Web上下文,会话el表达式string转int,请求,页面:

pageScope: 获取页面范围的值

如果您使用pageScope.objectName访问JSP中的整个页面对象,则也可以使用{pageScope.objectName.attributeName}访问该对象的属性.

requestScope: 获取请求范围的变量值

此对象允许访问所请求对象的属性. 如果使用requestScope.objectName访问JSP请求范围对象,则也可以使用{requestScope.objectName.attributeName}访问对象的属性.

sessionScope: 获取会话范围的变量值

此对象允许访问会话对象的属性. 例如: $ sessionScope.name}

applicationScope: 获取应用程序范围的变量值

此隐式对象允许访问应用程序范围的对象

5)访问cookie中的值

如果要在cookie中获取一个名称设置为用户名的值,则可以使用$ {cookie.username}来获取它.

string转int数组_el表达式string转int_el表达式double转int

六,使用sun提供的标准EL功能库

由于JSP页面中显示的数据经常需要处理显示的字符串,因此SUN定义了一组EL函数库供开发人员用于某些常见处理.

这些EL函数在JSTL开发包中进行了描述. 因此,如果您在JSP页面中使用SUN的EL函数库,则需要导入JSTL开发包并在页面中导入EL函数库.

使用EL函数库

1)导入jstl jar包

2)在相应的jsp页面上添加引用

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" import="java.util.*" %>
<!--导入需要使用taglib指令 --> 
 
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>el function demo</title>
</head>
<body>
 
   <%
       String[] strs = {"a","b","c"};//定义一个字符数组
       List list = new ArrayList();//定义一个list集合
       list.add("a");//向集合中添加一个字符
       pageContext.setAttribute("arr", strs);//将字符数据以arr的名字保存在page域中
       pageContext.setAttribute("list", list);//将list集合以list的名字保存在page域中
    %>
 
${fn:length(arr) }<br/><!--3-->
${fn:length(list) }<br/><!--1-->
${fn:toLowerCase("Hello") }<br/> <!-- hello -->
${fn:toUpperCase("Hello") }<br/> <!-- HELLO -->
${fn:contains("abc", "a")}<br/><!-- true -->
${fn:containsIgnoreCase("abc", "Ab")}<br/><!-- true -->
${fn:contains(arr, "a")}<br/><!-- true -->
${fn:containsIgnoreCase(list, "A")}<br/><!-- true -->
${fn:endsWith("Hello.java", ".java")}<br/><!-- true -->
${fn:startsWith("Hello.java", "Hell")}<br/><!-- true -->
${fn:indexOf("Hello-World", "-")}<br/><!-- 5 -->
${fn:join(arr, ";")}<br/><!-- a;b;c -->
${fn:replace("Hello-World", "-", "+")}<br/><!-- Hello+World -->
${fn:join(fn:split("a;b;c;", ";"), "-")}<br/><!-- a-b-c -->
${fn:substring("0123456789", 6, 9)}<br/><!-- 678 -->
${fn:substring("0123456789", 5, -1)}<br/><!-- 56789 -->
${fn:substringAfter("Hello-World", "-")}<br/><!-- World -->
${fn:substringBefore("Hello-World", "-")}<br/><!-- Hello -->
${fn:trim("   a b c   ")}<br/><!-- a b c -->
${fn:escapeXml("<html></html>")}<br/> <!-- <html></html> --> 
</body>
</html>


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-236042-1.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...