当前位置: 首页 > news >正文

6.SpringEL与List,Map

SpringEL与List,Map

文章目录

  • SpringEL与List,Map
    • 介绍
    • Spring EL以注解的形式
    • Spring EL以XML的形式

介绍

使用SpEL与 Map 和 List 的工作方式与Java是完全一样的

//get map whete key = 'MapA'
@Value("#{testBean.map['MapA']}")
private String mapA;//get first value from list, list is 0-based.
@Value("#{testBean.list[0]}")
private String list;

Spring EL以注解的形式

在这里,创建了一个HashMap和ArrayList,并添加了一些初始测试数据

package com.yiibai.core;import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;@Component("customerBean")
public class Customer {@Value("#{testBean.map['MapA']}")private String mapA;@Value("#{testBean.list[0]}")private String list;public String getMapA() {return mapA;}public void setMapA(String mapA) {this.mapA = mapA;}public String getList() {return list;}public void setList(String list) {this.list = list;}@Overridepublic String toString() {return "Customer [mapA=" + mapA + ", list=" + list + "]";}}
package com.yiibai.core;import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.stereotype.Component;@Component("testBean")
public class Test {private Map<String, String> map;private List<String> list;public Test() {map = new HashMap<String, String>();map.put("MapA", "This is MapA");map.put("MapB", "This is MapB");map.put("MapC", "This is MapC");list = new ArrayList<String>();list.add("List0");list.add("List1");list.add("List2");}public Map<String, String> getMap() {return map;}public void setMap(Map<String, String> map) {this.map = map;}public List<String> getList() {return list;}public void setList(List<String> list) {this.list = list;}}

执行程序

Customer obj = (Customer) context.getBean("customerBean");
System.out.println(obj);

输出结果:

Customer [mapA=This is MapA, list=List0]

Spring EL以XML的形式

<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-3.0.xsd"><bean id="customerBean" class="com.yiibai.core.Customer"><property name="mapA" value="#{testBean.map['MapA']}" /><property name="list" value="#{testBean.list[0]}" /></bean><bean id="testBean" class="com.yiibai.core.Test" /></beans>

相关文章:

6.SpringEL与List,Map

SpringEL与List,Map 文章目录 SpringEL与List,Map介绍Spring EL以注解的形式Spring EL以XML的形式 介绍 使用SpEL与 Map 和 List 的工作方式与Java是完全一样的 //get map whete key MapA Value("#{testBean.map[MapA]}") private String mapA;//get first value …...

【Oracle】使用 SQL Developer 连接 Oracle 数据库

文章目录 前言一、准备工作1、安装 SQL Developer2、安装 Oracle 数据库 二、连接 Oracle 数据库1、打开 SQL Developer2、连接数据库3、访问数据库 三、SQL 开发功能1、SQL Worksheet2、对象浏览器3、数据库管理 四、总结 前言 SQL Developer 是 Oracle 官方推出的一款免费的…...

PostgreSQL 事务并发锁

文章目录 PostgreSQL 事务大家都知道的 ACID事务的基本使用保存点 PostgreSQL 并发并发问题MVCC PostgreSQL 锁机制表锁行锁 总结 PostgreSQL 事务 大家都知道的 ACID 在日常操作中&#xff0c;对于一组相关操作&#xff0c;通常要求要么都成功&#xff0c;要么都失败。在关系…...

CANoe-Model Editor无法修改ARXML文件的问题、E2E在SOME/IP通信中的使用问题

1、Model Editor无法修改ARXML文件的问题 在CANoe 15软件版本中,Communication Setup导入arxml文件后,可以在model editor中打开arxml并修改配置。关闭model editor后再打开,可以看到修改的配置被保存了。 但是,当我把arxml文件从Communication Setup中移除后,再导入。此…...

Conan安装第三方依赖库时SSL验证失败解决办法

背景 c跨平台项目使用conan进行三方库依赖管理是比较通用的方案&#xff0c;更换开发环境后突然发现conan无法安装三方库了&#xff0c;报错如下&#xff1a; zlib/1.2.12: Not found in local cache, looking in remotes... zlib/1.2.12: Trying with conan-center... ERROR…...

基于springboot+vue的大学生智能消费记账系统

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容&#xff1a;毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…...

Java——》synchronized的使用

推荐链接&#xff1a; 总结——》【Java】 总结——》【Mysql】 总结——》【Redis】 总结——》【Kafka】 总结——》【Spring】 总结——》【SpringBoot】 总结——》【MyBatis、MyBatis-Plus】 总结——》【Linux】 总结——》【MongoD…...

vue+element使用阿里的图标库保存图标

阿里图标网站iconfont-阿里巴巴矢量图标库 我想使用保存图标&#xff0c;但是element的图标库没有找到可用的&#xff0c;首先在阿里的图标网站搜索保存 发现这个还不错 点击添加入库 点击购物车 点击添加至项目 点击下载到本地 把下载的压缩包里面的文件拖到自己项目里面 在m…...

Day 01 web前端基础知识

首先我们要了解什么事前端&#xff1f; 先简单用文字介绍一下&#xff1a; 一、入门知识 Web前端是指网站或应用程序的用户界面部分。它包括HTML、CSS、JavaScript等语言和技术&#xff0c;用于创建用户可浏览和交互的网页。Web前端的特点在于其交互性和动态性&#xff0c;可…...

Redis 高可用之持久化

目录 Redis 高可用 Redis 持久化 RDB 持久化 触发条件 执行流程 启动时加载 修改配置文件 AOF 持久化 配置 执行流程 命令追加(append) 文件写入(write)和文件同步(sync) 文件重写(rewrite) 文件重写的流程 RDB和AOF的优缺点 Redis 高可用 在web服务器中&…...

生成元 rust解法

如果x加上x的各个数字之和得到y&#xff0c;就说x是y的生成元。给出n&#xff08;1≤n≤100000&#xff09;&#xff0c;求n的最小生成元。无解输出0。例如&#xff0c;n216&#xff0c;121&#xff0c;2005时的解分别为198&#xff0c;0&#xff0c;1979。 【分析】 本题看起来…...

某ERP系统存在RCE漏洞

文章目录 前言声明一、产品简介二、影响资产三、资产发现四、漏洞测试五、修复方案前言 企望制造纸箱行业ERP系统存在RCE漏洞,攻击者可通过特定Payload注入获取敏感信息。 声明 请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直…...

ElasticSearch 因为索引字段改变,平滑迁移索引

问题&#xff1a; 某个索引创建时&#xff0c;没有按照想要的mapping,进行创建。 有个字段是text&#xff0c;不是想要的keyWord 此时需要重新按照mapping创建新索引&#xff0c;并迁移数据&#xff0c; 一、不使用别名的方式迁移 1. 创建新索引&#xff1a; 使用 Elastics…...

invalid use of incomplete type ‘class Ui::xxx‘

MainWindow 引用自定义窗口报错&#xff1a;invalid use of incomplete type class Ui::xxx mainwindow.cpp #include "mainwindow.h" #include "ui_mainwindow.h" #include "form.h" form.cpp #include "form.h" #include "…...

变压器寿命预测(python代码,Logistic Regression模型预测效果一般,可以做对比实验)

1.数据来源官网&#xff1a;Data for: Root cause analysis improved with machine learning for failure analysis in power transformers - Mendeley Data 点Download All 10kb即可下载数据 2.下载下来后是这样 每一列的介绍&#xff1a; Hydrogen 氢气&#xff1b; Oxyge…...

微信小程序-增加隐私协议弹窗

真的加了非常之久&#xff0c;非常简单的一个功能&#xff0c;但是因为之前没弄过&#xff0c;加上系统有点bug,软件也有点抽风...... 在微信后台配置-更新用户隐私协议信息增加 "__usePrivacyCheck__" : true, 9月15号之后不加也行&#xff0c;好象今天刚刚好9月15…...

分布式事务解决方案之可靠消息最终一致性

分布式事务解决方案之可靠消息最终一致性 什么是可靠消息最终一致性事务 可靠消息最终一致性方案是指当事务发起方执行完成本地事务后并发出一条消息&#xff0c;事务参与方(消息消费者)一定能 够接收消息并处理事务成功&#xff0c;此方案强调的是只要消息发给事务参与方最终…...

ROS学习笔记(四)---使用 VScode 启动launch文件运行多个节点

ROS学习笔记文章目录 01. ROS学习笔记(一)—Linux安装VScode 02. ROS学习笔记(二)—使用 VScode 开发 ROS 的Python程序&#xff08;简例&#xff09; 03. ROS学习笔记(三)—好用的终端Terminator 一、什么是launch文件 虽然说Terminator终端是能够比较方便直观的看运行的节点…...

编译Redis时报错: jemalloc/jemalloc.h: No such file or directory

1.编译Redis时出现错误 运行&#xff1a; [rootcentos01 redis-6.2.7]# make & make install报错&#xff1a; zmalloc.h:50:31: fatal error: jemalloc/jemalloc.h: No such file or directory #include <jemalloc/jemalloc.h> 2.解决步骤 2.1 检查gcc是否安装 [r…...

LLM 05-大模型法律

LLM 05-大模型法律 5.1 简介 在这个教程中&#xff0c;我们将探讨法律对大型语言模型的开发和部署有何规定。我们将会按照以下的步骤进行讨论&#xff1a; 新技术与现有法律的关系 与我们之前的讲座一样&#xff0c;比如关于社会偏见的讲座&#xff0c;我们将要讨论的很多内容…...

深入FFmpeg解码器:从avcodec_send_packet看硬解与软解的实现差异

深入FFmpeg解码器&#xff1a;从avcodec_send_packet看硬解与软解的实现差异 在多媒体处理领域&#xff0c;FFmpeg无疑是开发者最常接触的开源框架之一。其强大的编解码能力支撑着从视频播放器到直播系统的各类应用&#xff0c;而解码器作为其中的核心组件&#xff0c;其性能直…...

Rainmeter皮肤模板循环控制:break/continue实现终极指南

Rainmeter皮肤模板循环控制&#xff1a;break/continue实现终极指南 【免费下载链接】rainmeter Desktop customization tool for Windows 项目地址: https://gitcode.com/gh_mirrors/ra/rainmeter Rainmeter作为一款强大的Windows桌面自定义工具&#xff0c;其皮肤模板…...

智能记账本:OpenClaw+Qwen3.5-9B自动归类信用卡消费邮件

智能记账本&#xff1a;OpenClawQwen3.5-9B自动归类信用卡消费邮件 1. 为什么需要自动化记账工具 每次收到银行消费短信时&#xff0c;我都会陷入两难&#xff1a;手动记账太繁琐&#xff0c;不记账又会导致月度消费分析失真。传统记账软件需要手动输入金额和分类&#xff0c…...

基于PSO算法的海陆空多栖无人机路径规划探索

PSO算法&#xff0c;空中机器人路径规划&#xff0c;无人机路径规划 海陆空多栖环境路径规划&#xff0c;考虑海洋和大气中的能源消耗不同&#xff0c;还原环境特性&#xff0c;粒子群PSO算法在如今科技飞速发展的时代&#xff0c;无人机的应用场景越发广泛&#xff0c;从简单的…...

2-1爬取豆瓣电影数据

数据来源网站&#xff1a;https://movie.douban.com/chart import requests import json import timedef fetch_douban():all_movies []start 0limit 20print("开始爬取豆瓣电影榜单")headers {"User-Agent": "Mozilla/5.0","Referer&…...

C12832 LCD嵌入式驱动库详解:mbed平台128×32点阵显示开发指南

1. C12832 LCD驱动库概述C12832_lcd 是专为 mbed 应用开发板&#xff08;Application Board&#xff09;板载液晶显示屏设计的嵌入式驱动库。该显示屏型号为 C12832&#xff0c;是一款 12832 点阵、单色、COG&#xff08;Chip-on-Glass&#xff09;结构的 STN 液晶模块&#xf…...

别再傻傻分不清了!用Simulink手把手带你搞懂导纳控制与阻抗控制的本质区别

导纳控制 vs 阻抗控制&#xff1a;从理论到Simulink实战的深度解析 在机器人控制领域&#xff0c;柔性交互是一个永恒的话题。想象一下&#xff0c;当机械臂需要完成精密装配任务时&#xff0c;既要有足够的刚性保证定位精度&#xff0c;又要在意外碰撞时表现出适当的柔顺性——…...

Laravel Backup隔离模式详解:多服务器环境下的终极安全备份方案

Laravel Backup隔离模式详解&#xff1a;多服务器环境下的终极安全备份方案 【免费下载链接】laravel-backup A package to backup your Laravel app 项目地址: https://gitcode.com/gh_mirrors/la/laravel-backup Laravel Backup包为Laravel应用提供了强大可靠的备份解…...

N诺机试题

2.整除&#xff08;末尾无空格用printf“ ”&#xff09;#include<stdio.h>int main(){int count0;for(int i100;i<1000;i){if(i%50&&i%60){printf("%d",i);count;if(count%100) printf("\n");else printf(" "); }}return 0;…...

OpenClaw多场景实战:Qwen3-VL:30B在飞书中的5个应用案例

OpenClaw多场景实战&#xff1a;Qwen3-VL:30B在飞书中的5个应用案例 1. 为什么选择OpenClawQwen3-VL:30B组合 去年我在团队内部尝试搭建智能助手时&#xff0c;发现市面上大多数方案要么需要将敏感数据上传到第三方平台&#xff0c;要么功能过于单一。直到遇到OpenClaw这个开…...