EL表达式学习(一):输出复杂的Bean对象

简介: 今天学习的内容是:使用EL表达式输出Person类中的普通属性、数组属性,list集合属性和map集合属性 。

今天学习的内容是:使用EL表达式输出Person类中的普通属性、数组属性,list集合属性和map集合属性 。


先创建Person.java:

package demo01;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
public class Person {
//    需求————输出Person类中的普通属性、数组属性,list集合属性和map集合属性
    private String name;
    private String[] phones;
    private List<String> cities;
    private Map<String,Object> map;
    public Person(String name, String[] phones, List<String> cities, Map<String, Object> map) {
        this.name = name;
        this.phones = phones;
        this.cities = cities;
        this.map = map;
    }
    public Person() {
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String[] getPhones() {
        return phones;
    }
    public void setPhones(String[] phones) {
        this.phones = phones;
    }
    public List<String> getCities() {
        return cities;
    }
    public void setCities(List<String> cities) {
        this.cities = cities;
    }
    public Map<String, Object> getMap() {
        return map;
    }
    public void setMap(Map<String, Object> map) {
        this.map = map;
    }
    @Override
    public String toString() {
        return "Person{" +
                "name=" + name +
                ", phones=" + Arrays.toString(phones) +
                ", cities=" + cities +
                ", map=" + map +
                '}';
    }
}


再创建demo03.jsp:

<%@ page import="demo01.Person" %>
<%@ page import="java.util.List" %>
<%@ page import="java.util.ArrayList" %>
<%@ page import="java.util.Map" %>
<%@ page import="java.util.HashMap" %><%--
  Created by IntelliJ IDEA.
  User: pc
  Date: 2021/8/5
  Time: 10:17
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
    <%
        Person person = new Person();
        person.setName("哈哈哈");
        person.setPhones(new String[]{"12345678910","01379462850"});
        List<String> cities = new ArrayList<String>();
        cities.add("北京");
        cities.add("天津");
        cities.add("上海");
        person.setCities(cities);
        Map<String,Object>map = new HashMap<>();
        map.put("key1","value1");
        map.put("key2","value2");
        map.put("key3","value3");
        person.setMap(map);
        pageContext.setAttribute("p",person);
    %>
    输出Person:${ p }<br>
    输出Person的name属性:${p.name}<br>
    输出Person的phones数组值:${p.phones[0]}<br>
    输出Person的cities集合的元素值:${p.cities}<br>
</body>
</html>


运行后的页面效果:

20210805105243312.png


相关文章
|
Java Spring 容器
简单存 Bean 对象 -- 五大类注解以及 Bean 方法(下)
简单存 Bean 对象 -- 五大类注解以及 Bean 方法(下)
|
6月前
|
Java API
JavaBean解析
JavaBean解析
|
前端开发 Java 数据库
SpringBoot返回枚举对象中的所有属性以对象的形式返回(一个@JSONType解决)
SpringBoot返回枚举对象中的所有属性以对象的形式返回(一个@JSONType解决)
790 0
|
JSON 前端开发 Java
springboot中自定义JavaBean返回的json对象属性名称大写变小写问题
springboot中自定义JavaBean返回的json对象属性名称大写变小写问题
201 0
|
Java
解决freemarker数组中的对象属性获取不到
解决freemarker数组中的对象属性获取不到
452 1
|
存储 Java Spring
简单存 Bean 对象 -- 五大类注解以及 Bean 方法(上)
简单存 Bean 对象 -- 五大类注解以及 Bean 方法(上)
JavaBean 程序示例
JavaBean 程序示例
59 0
|
Java 关系型数据库 MySQL
如何使用@Value注解为bean的属性赋值呢
如何使用@Value注解为bean的属性赋值呢
SpringBoot——Thymeleaf中的表达式基本对象、表达式功能对象
SpringBoot——Thymeleaf中的表达式基本对象、表达式功能对象
SpringBoot——Thymeleaf中的表达式基本对象、表达式功能对象
|
Java Spring 容器
Spring注解(七):使用@Value对Bean进行属性赋值
在配置文件中可以通过property 标签对Bean进行赋值:
459 0
Spring注解(七):使用@Value对Bean进行属性赋值