如果你有梦想,有信仰。那么就去寻找自己的路。回顾EL标签库和JSTL。(一)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 如果你有梦想,有信仰。那么就去寻找自己的路。回顾EL标签库和JSTL。

今天回顾的内容

第一部分 EL标签库让你能少些代码。


@1了解一些基础的内容


@3用El表达式获取数组的方式练习。


上面的流程图是网页默认的时候也是今天回顾的重点内容。


边看代码边看结果。



@4用El表达式获取集合的方式。


@5用EL表达式获取Map集合数据。和list集合中含有map集合的方式如何获取数据。



@6用EL表达式获取实体类的方式。



案例:从所学到今天的EL表达式的过程。


上面代码运行结果在上面的默认网页效果中这里不展示。


第二部分:JSTL能完全用jsp语言代替java代码。


如何配置


上面的内容下一次博客回顾。

第一部分 EL标签库让你能少些代码。


@1了解一些基础的内容

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<style type="text/css">
*{
color: black;
font-size: 45px;
}
</style>
<title>Insert title here</title>
</head>
<body>
<!-- 算数运算 -->
  ${4+6 }
  ${4/6 }
  ${4*6 }
  <br>
  ${3222*89 }
  <br>
  ${23 mod 5 }<br>
  ${23/5 }<br>
  <%
    request.setAttribute("age", 56);  
  %>
  ${age-5 }<br>
  <br>
  <!-- 关系运算符 -->
  ${age/11>7 }<br>
    ${age/11<=7 }<br>
    ${age/11>=7 }<br>
    ${age/11<7 }<br>
    ${age/11==7 }<br>
<!-- 逻辑运算符 -->
${ age mod 3==0 && age/5 ge 2}<br>
${ age mod 3 ==0||  age/5 ge 2}<br>
<%--  空运算符--%>
<%
int [] nums =null;
pageContext.setAttribute("n", nums);
%>
${empty(n) }<br>
<!-- 三元运算符   -->
${age/2+3-6>45?"AAA":"BBB" }<br>
<!--练习题  -->
<h2>
${23+67*90 }<br>
${3>2?3:2 }<br>
</h2>
</body>
</html>

@3用El表达式获取数组的方式练习。

上面的流程图是网页默认的时候也是今天回顾的重点内容。

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>用El表达式获取数组的方式练习</title>
<style type="text/css">
*{
font-size: 40px;
font-weight: bold;
}</style>
</head>
<body>
<h1>数组的方式</h1>
<!-- 数组一 -->
<%
String [] grirs={"@AAAA","@BBBB","@CCCC","@DDDD","@EEE"};
session.setAttribute("gs", grirs);
%>
<!-- 方式一java代码 -->
<%
String [] gs=(String[])session.getAttribute("gs");
%>
<%=gs[0] %><br><%=gs[1] %><br><%=gs[2] %><br><%=gs[3] %><br><%=gs[4] %><br>
<!-- 方式二用EL的表达式 -->
${gs[0]},${gs[1]},${gs[2]},${gs[3]},${gs[4] }
<hr>
<%
String [] se={"我是用session存放的数据AA","我是用session存放的数据@BB","我是用session存放的数据@CC","我是用session存放的数据@DD","我是用session存放的数据@EE"};
request.setAttribute("s", se);
%>
${s[0] } &nbsp; ${s[1] } &nbsp;  ${s[2] }  &nbsp; ${s[3] } &nbsp; ${s[4] }
<hr>
<%
String [] ap={"1111","2222","3333","444","5555","66666"};
application.setAttribute("a", ap);
%>
${a[0] }  ${a[1] } ${a[2] } ${a[3] } ${a[4] }
<hr>
<%
String [] rs={"1111a","222e2","33r33","44t4","555y5","6u6666"};
pageContext.setAttribute("as",rs);
%>
${as[0] }  ${as[1] }   ${as[2] }   ${as[3] }   ${as[4] }   ${as[5] }  
</body>
</html>

边看代码边看结果。

<%@page import="java.util.List"%>
<%@page import="java.util.ArrayList"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<style type="text/css">
*{
font-size: 40px;
font-weight: bold;
}</style>
<title>El表达式获取集合的方式</title>
</head>
<body>
<h2><%-- 域中的名称${域中的名称[加下标从0开始] } --%></h2>
<!-- 案例一 -->
<%
 List<Integer> list=new ArrayList<>();
list.add(89);
list.add(79);
list.add(69);
list.add(59);
session.setAttribute("l", list);
%>
<!-- El表达式的获取 -->
${l[0]},${l[1]},${l[2]},${l[3]}<br>
<!--  案例二 -->
<%
List<Integer> lis=new ArrayList<>();
lis.add(189);
lis.add(179);
lis.add(639);
lis.add(549);
lis.add(123);
application.setAttribute("a", lis);
%>
<!-- El表达式的获取 -->
${a[0]},${a[1]},${a[2]},${a[3]}<br>
<!--案例三  -->
<%
List<Integer> lisq=new ArrayList<>();
lisq.add(1389);
lisq.add(1479);
lisq.add(6539);
lisq.add(5469);
lisq.add(1253);
request.setAttribute("aa", lisq);
%>
<!-- El表达式的获取 -->
${aa[0]},${aa[1]},${aa[2]},${aa[3]},${aa[4]}<br>
<!--  案例四-->
<%
List<Integer> wlisq=new ArrayList<>();
wlisq.add(13489);
wlisq.add(14749);
wlisq.add(65349);
wlisq.add(54469);
wlisq.add(12453);                                     
pageContext.setAttribute("waa", wlisq);
%>
<!-- El表达式的获取 -->
${waa[0]},${waa[1]},${waa[2]},${waa[3]},${waa[4]}<br>
</body>
</html>

@5用EL表达式获取Map集合数据。和list集合中含有map集合的方式如何获取数据。

<%@page import="java.util.HashMap"%>
<%@page import="java.util.Map"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<style type="text/css">
*{
font-size: 40px;
font-weight: bold;
}</style>
<head>
<meta charset="UTF-8">
<title>用EL表达式获取Map集合数据</title>
</head>
<body>
<!-- 案例一 -->
<%
Map<String,String>map =new HashMap<>();
map.put("book1","JAVA程序设计");
map.put("book2","c++程序设计1");
map.put("book3","Jquery程序设计2");
map.put("book4","mysql程序设计3");
map.put("book5","javascript程序");
request.setAttribute("bo", map);
%>
<!--  四大作用域中的名称-->
<!-- MAP集合查找  El-->
${bo.book1}<br>
${bo.book2}<br>
${bo.book3}<br>
${bo.book4}<br>
${bo.book5}<br>
<hr>
<!-- 案例二 -->
<%
Map<String,String>ma =new HashMap<>();
ma.put("book1","JAVA程序设计AA");
ma.put("book2","c++程序设计1BB");
ma.put("book3","Jquery程序设计2CC");
ma.put("book4","mysql程序设计3DD");
ma.put("book5","javascript程序EE");
session.setAttribute("boo", ma);
%>
<!--  四大作用域中的名称-->
<!-- MAP集合查找  El-->
${boo.book1}<br>
${boo.book2}<br>
${boo.book3}<br>
${boo.book4}<br>
${boo.book5}<br>
<hr>
<!-- 案例三 -->
<%
Map<String,String>maq =new HashMap<>();
maq.put("book1","JAVA程序q设计AA");
maq.put("book2","c++程序q设计1BB");
maq.put("book3","Jquery程q序设计2CC");
maq.put("book4","mysql程q序设计3DD");
maq.put("book5","javascriqpt程序EE");
session.setAttribute("qboo", maq);
%>
<!--  四大作用域中的名称-->
<!-- MAP集合查找  El-->
${qboo.book1}<br>
${qboo.book2}<br>
${qboo.book3}<br>
${qboo.book4}<br>
${qboo.book5}<br>
<!-- 案例四 -->
<hr>
<%
Map<String,String>maqw =new HashMap<>();
maqw.put("book1","JAVA程w序q设计AA");
maqw.put("book2","c++w程序q设计1BB");
maqw.put("book3","Jquery程wq序设计2CC");
maqw.put("book4","mysqlw程q序设计3DD");
maqw.put("book5","javascwriqpt程序EE");
session.setAttribute("wqboo", maqw);
%>
<!--  四大作用域中的名称-->
<!-- MAP集合查找  El-->
${wqboo.book1}<br>
${wqboo.book2}<br>
${wqboo.book3}<br>
${wqboo.book4}<br>
${wqboo.book5}<br>
</body>
</html>

@6用EL表达式获取实体类的方式。

<%@page import="comabc.pig"%>
<%@page import="comabc.Dog"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<style type="text/css">
*{
font-size: 30px;
}</style>
<title>用EL表达式获取实体类的方式</title>
</head>
<body>
<!-- 第一个对象dog -->
<%
    Dog dog=new Dog("旺财题",3,"黑色");
    pageContext.setAttribute("d1", dog);
    Dog dog2 =new Dog("小王猜",3,"红色");
      request.setAttribute("d2", dog2);
    Dog dog3 =new Dog("小虾米",2,"白色");
    session.setAttribute("d3", dog3);
    Dog dog34 =new Dog("小王八",2,"黄色");
    application.setAttribute("d4", dog3);
  %>
  <!-- 方式一 -->
  <%
    Dog d=(Dog)pageContext.getAttribute("d1");
  %>
  名字:<%=d.getName() %><br>
  年龄:<%=d.getAge() %><br>
  颜色:<%=d.getColor() %><br>
  <h1 style="background: red;color: white;">--获取方式一的数据的内容--</h1>
  <br>
  <!-- 方式二 -->
  <h1 style="background: red;color: white;">--实体类获取数据的内容方式二@1-</h1>
  名字:${d1.name }&nbsp;&nbsp;&nbsp;
  年龄:${d1.age }&nbsp;&nbsp;&nbsp;
  颜色:${d1.color }&nbsp;&nbsp;&nbsp;
  <h1 style="background: red;color: white;">--获取方式二的数据的内容@2--</h1>
  名字:${d2.name }<br>
  年龄:${d2.age }<br>
  颜色:${d2.color }<br>
  <h1 style="background: red;color: white;">--获取方式二的数据的内容@3--</h1>
  名字:${d3.name }<br>
  年龄:${d3.age }<br>
  颜色:${d3.color }<br>
    <h1 style="background: red;color: white;">--获取方式二的数据的内容@4--</h1>
  名字:${d4.name }<br>
  年龄:${d4.age }<br>
  颜色:${d4.color }<br>
  <hr>
  <!-- 第二个对象pig -->
  <%
    pig pig =new pig("小黄鱼",4,"黑色",166);
    pageContext.setAttribute("p1", pig);
  %>
  <h1 style="background: red;color: white;">--获取对象的数据的内容@1--</h1>
  名字:${p1.name }&nbsp;&nbsp;&nbsp;
  年龄:${p1.age }&nbsp;&nbsp;&nbsp;
  颜色:${p1.color }&nbsp;&nbsp;&nbsp;
  身高${p1.height }
</body>
</html>
package comabc;
/**
 * 小狗的实体类
 * @author MZFAITHDREAM
 *类封装
 */
public class Dog {
  private String name;
  private int age;
  private String color;
  public Dog() {
    // TODO Auto-generated constructor stub
  }
  public Dog(String name, int age, String color) {
    super();
    this.name = name;
    this.age = age;
    this.color = color;
  }
  public String getName() {
    return name;
  }
  public void setName(String name) {
    this.name = name;
  }
  public int getAge() {
    return age;
  }
  public void setAge(int age) {
    this.age = age;
  }
  public String getColor() {
    return color;
  }
  public void setColor(String color) {
    this.color = color;
  }
  @Override
  public String toString() {
    return "Dog [name=" + name + ", age=" + age + ", color=" + color + "]";
  }
}
package comabc;
public class pig {
  private String name;
  private int age;
  private String color;
  private int height=123;
  public pig() {
    // TODO Auto-generated constructor stub
  }
  public pig(String name, int age, String color, int height) {
    super();
    this.name = name;
    this.age = age;
    this.color = color;
    this.height = height;
  }
  public String getName() {
    return name;
  }
  public void setName(String name) {
    this.name = name;
  }
  public int getAge() {
    return age;
  }
  public void setAge(int age) {
    this.age = age;
  }
  public String getColor() {
    return color;
  }
  public void setColor(String color) {
    this.color = color;
  }
  public int getHeight() {
    return height;
  }
  public void setHeight(int height) {
    this.height = height;
  }
  @Override
  public String toString() {
    return "pig [name=" + name + ", age=" + age + ", color=" + color + ", height=" + height + "]";
  }
}

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
前端开发
【前端学习从青铜到王者】—HTML常用标签(二)
【前端学习从青铜到王者】—HTML常用标签(二)
|
XML SQL Java
JavaWeb 速通 EL 和 JSTL
JavaWeb——服务器渲染技术 EL + JSTL 内容分享
106 0
|
8月前
|
设计模式 前端开发 Java
javaweb实训第四天上午——员工管理系统-JavaBean&EL&JSTL&MVC思想(3)
5.2.怎么使用JSTL标签库 第一步:导入相关的jar包
123 0
|
8月前
|
前端开发 Java
javaweb实训第四天上午——员工管理系统-JavaBean&EL&JSTL&MVC思想(1)
1.课程介绍 项目需求分析; (了解) JavaBean; (掌握) El表达式; (掌握) JSTL标签; (掌握) MVC思想; (掌握)
87 0
|
8月前
|
前端开发 Java
javaweb实训第四天上午——员工管理系统-JavaBean&EL&JSTL&MVC思想(2)
4.3.EL表达式访问四大作用域的绑定值 搭建环境:分别从各大作用域里面取值
88 0
|
5月前
|
Scala 前端开发 开发者
Play Framework模板引擎大对决:Twirl的魔力与Mustache的简约,谁才是真正的王者?
【8月更文挑战第31天】刘杰是一位软件开发工程师,在基于高性能Web框架Play Framework的新项目中负责前端页面开发。在个人博客里,他详细比较了Play Framework提供的两种内置模板引擎——Twirl与Mustache。Twirl为Play默认模板引擎,使用Scala编写,具备强大的功能与灵活性;而Mustache是一个无逻辑的模板引擎,适用于多种编程语言,使用双花括号表示变量。
49 0
|
5月前
|
Java 测试技术 容器
从零到英雄:Struts 2 最佳实践——你的Web应用开发超级变身指南!
【8月更文挑战第31天】《Struts 2 最佳实践:从设计到部署的全流程指南》深入介绍如何利用 Struts 2 框架从项目设计到部署的全流程。从初始化配置到采用 MVC 设计模式,再到性能优化与测试,本书详细讲解了如何构建高效、稳定的 Web 应用。通过最佳实践和代码示例,帮助读者掌握 Struts 2 的核心功能,并确保应用的安全性和可维护性。无论是在项目初期还是后期运维,本书都是不可或缺的参考指南。
57 0
|
5月前
|
存储 前端开发 Java
JSTL核心标签库
这篇文章详细介绍了JSTL核心标签库中的表达式标签,包括输出、变量设置、变量移除、导入、重定向、传递参数、条件判断、条件选择、循环等标签的语法和使用示例,旨在简化JSP程序的开发。
|
7月前
|
安全 Java 关系型数据库
基于JSP技术的定西扶贫惠农推介系统
基于JSP技术的定西扶贫惠农推介系统
|
Java
如果你有梦想,有信仰。那么就去寻找自己的路。回顾EL标签库和JSTL。(二)
如果你有梦想,有信仰。那么就去寻找自己的路。回顾EL标签库和JSTL。
70 0
如果你有梦想,有信仰。那么就去寻找自己的路。回顾EL标签库和JSTL。(二)