JavaWeb初识 jsp(EL表达式),JSTL-阿里云开发者社区

开发者社区> 死瘦宅> 正文

JavaWeb初识 jsp(EL表达式),JSTL

简介: 什么是EL表达式,简易JSP的操作在EL表达式中也可以调用相应的方法,例如String中的trim() 方法EL表达式简化 JSP向网页的输出EL表达式如果你的值为null(为空)他就不会进行相应的输出EL表达式查找过程:先Request,再是Session,然后才是Application(Sev.
+关注继续查看

什么是EL表达式,简易JSP的操作
在EL表达式中也可以调用相应的方法,例如String中的trim() 方法
EL表达式简化 JSP向网页的输出
EL表达式如果你的值为null(为空)他就不会进行相应的输出
EL表达式查找过程:先Request,再是Session,然后才是Application(SevletContext)
固定查找
SessionScope session中的指定输出查找
RequestScope request中的指定输出查找
ApplicationScope applicationScope 中的指定输出查找

    request.setAttribute("sname", "request");
    session.setAttribute("sname", "session");
    application.setAttribute("sname", "appliccation");
%>
${requestScope.sname}<br>
${sessionScope.sname}<br>
${applicationScope.sname}<br>

假如你将一个对象塞入request中你也可以通过EL表达式将他取出来
1.需要引入对象(用page说明对象路径)
2.创建对象 set塞入值
4.放入request中
5.通过EL表达式拿出值

<%
    Student student = new Student();
    student.setAddress("上海");
    student.setAge("15");
    student.setName("李四");
    request.setAttribute("student", student);
%>
${student.address}<br><%--EL表达式会自动帮你拿到get值--%>
${student.name}<br>
${student.age}

也可以获得url传输的值

${param.age}
${param.url参数名称}

可以获得cookiezh值 ${cookie.要得到的值}
请求头例如获得用户浏览器信息 ${header["user-agent"]}
也可以进行三元运算 ${student.age>=15?"青年":"少年"}<%--可以自动将字符串转换成数字做运算--%>
可以做简易判断返回true,fales ${student.age>15}

也可以拿到集合长度

${list.size()}<br>

JSTL 是一个标记和HTML不一样,这个标记是解决Java 代码的繁琐
需要引入JSTL的包
第一步引入JSTL标记库

<%--标准标记库 prefix标记前缀, uri标记地址--%>
<%@taglib prefix="tl" uri="http://java.sun.com/jstl/fmt_rt" %>
<%--格式转化标记库--%>

循环标记:
如果你在JSP中取出集合的值的话需要这样去

ArrayList<Student> arrayList1 = (ArrayList<Student>) request.getAttribute("date");
for (Student o : arrayList1) {
out.println(o.getAge() + "<br>");
}
%>

但是用了JSTL标记后就可以这样去

    ${o.age}
    ${o.name}
</js:forEach>


js标记库前缀名称,forEach循环取值, items取值对象,var要塞入的对象,也可以控制下标begin开始下标,end到那个下标结束
varStatus可以去到下标

${xx.count} 数量
${xx.index} 下标

${o.name} 同过EL进行取值

还可以给死值循环

    ${XI}
</js:forEach>

通过JSTL可以进行IF判断没有else

    嘻嘻哈哈
</js:if>

也有多路判断

    <js:when test="${requestScope.age>20}">阿拉蕾</js:when>
    <js:when test="${age<15}"></js:when>
    <js:when test="${age==11}"></js:when>
    <js:otherwise>
        没有您要的选项
    </js:otherwise>
</js:choose>

也有异常处理 将值放入到一个对象当中

<js:catch var="name">
    <%
        String name = null;
        name.toString();
    %>
</js:catch>
${name}
 

也可以存储值临时

<js:set var="address" value="湖南" scope="request"></js:set>${address}

也可以进行输出 输出可以调,如果没有就输出什么

<js:out value="${xx}" default="没有"/>

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

附件下载:https://developer.aliyun.com/topic/download?id=667

相关文章
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
10053 0
分享录制的正则表达式入门、高阶以及使用 .NET 实现网络爬虫视频教程
我发布的「正则表达式入门以及高阶教程」,欢迎学习。 课程简介 正则表达式是软件开发必须掌握的一门语言,掌握后才能很好地理解到它的威力; 课程采用概念和实验操作 4/6 分隔,帮助大家理解概念后再使用大量的实例加深对概念的理解; 实例操作是对概念最好的理解,也是学习新语言最有效的办法; 在课程中也穿插着大量软件开发的技巧和大家分享; 应该是把晦涩的正则表达式讲解的最生动的课程; 掌握了正则表达式后,您一定会觉得这是一门最值得掌握的语言。
931 0
《圣殿祭司的ASP.NET4.0专家技术手册》----2-11 Lambda表达式
Lambda表达式(Lambda Expressions)其功能属于Anonymous Function,但比.NET 2.0的匿名方法具备更强能力,语法更为简洁,应用的场景更为广泛。
1093 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
13868 0
电商/O2O行业搜索排序表达式最佳实践
搭建搜索功能不难,难的是如何提高搜索质量,帮助用户快速找到心中所想的内容或商品,那么搜索结果的相关性排序则是影响用户体验最关键的一环,今天小编和大家聊一聊[开放搜索]几个典型的排序表达式的应用,如何更好的优化电商/O2O行业的排序效果.
1646 0
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
11887 0
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
7359 0
+关注
62
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载