上文 JSP EL表达式基本使用 中 我们对EL表达式做了一个基本的了解 也做了基础的字符串数据使用
那么 我们可以来看一下我们的集合
首先 list 这个比较简单 我们直接这样写代码
html
<%@ page import="java.util.ArrayList" %>
<%@ page import="java.util.List" %>
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%request.setCharacterEncoding("UTF-8");%>
<!DOCTYPE html>
<html>
<head>
<title>JSP - Hello World</title>
</head>
<body>
<%
List<String> list = new ArrayList<>();
list.add("aaa");
list.add("bbb");
list.add("ccc");
request.setAttribute("list", list);
%>
<h1>获取list集合长度</h1>
<p>${list.size()}</p>
<h1>获取list指定 1 下标</h1>
<p>${list[1]}</p>
</body>
</html>
首先 要用list 我们要引入 java.util.List和java.util.ArrayList
然后 我们在java代码中声明了一个list集合 我们加入了三条数据
然后将他放在request 作用域中
然后 下面我们通过 EL表达式 输出长度就是集合名.size函数就好了
然后 指定下标 就是 集合名 中括号 里面放入指定的下标值
我们运行界面
这边 我们集合长度确实是三条
然后 指定1下标 因为下标是从0开始的 第二个确实是bbb 也是没有任何问题
我们再来看 Map
我们写代码如下
html
<%@ page import="java.util.Map" %>
<%@ page import="java.util.HashMap" %>
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%request.setCharacterEncoding("UTF-8");%>
<!DOCTYPE html>
<html>
<head>
<title>JSP - Hello World</title>
</head>
<body>
<%
Map map = new HashMap();
map.put("aaa","111");
map.put("bbb","222");
map.put("ccc","333");
request.setAttribute("Map", map);
%>
<h1>通过点键名获取value</h1>
<p>${Map.aaa}</p>
<h1>通过中括号 获取键对应value</h1>
<p>${Map["bbb"]}</p>
</body>
</html>
这里 我们要用 Map 要导入 java.util.Map和java.util.HashMap
然后 我声明一个 Map
用 中括号 里面写键 和 直接集合名点键名的方式获取value
页面运行之后
运行也是没有任何问题
然后就是 java bean对象
我们在java文件这里 新建一个包 我这里叫 attribute
这个名字随便取
然后 我在下面创建一个类 这里我直接叫 users 用户类
这里 参考代码如下
java
package com.example.dom.attribute;
public class users {
private int id;
private String name;
public void setName(String name) {
this.name = name;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public int getId() {
return id;
}
}
这里 我定义了基本的 id和name 然后 给他们提供了 get set函数
然后 我们jsp中这样写
html
<%@ page import="com.example.dom.attribute.users" %>
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%request.setCharacterEncoding("UTF-8");%>
<!DOCTYPE html>
<html>
<head>
<title>JSP - Hello World</title>
</head>
<body>
<%
users user = new users();
user.setId(1);
user.setName("小猫猫");
request.setAttribute("user", user);
%>
<h1>user java bean</h1>
<p>${user}</p>
<h1>通过属性名 获取值</h1>
<p>${user["name"]}</p>
<p>${user.name}</p>
<p>${user.getName()}</p>
</body>
</html>
首先 com.example.dom.attribute.users 导入我们的java类
然后 创建一个对象 直接 set 写入 id和name的值
下面我们直接在EL中使用
有三种方式 第一种 对象后面点属性名 对象后面中括号放属性名 对象后面直接使用get函数
运行代码如下