@Value("#{}")与@Value("${}")的区别以及用法

复制代码
 1 package com.ieou.capsule_basic_info.util;
 2 
 3 
 4 import org.springframework.beans.factory.annotation.Value;
 5 import org.springframework.stereotype.Component;
 6 import org.springframework.web.bind.annotation.RequestMapping;
 7 import org.springframework.web.bind.annotation.RestController;
 8 
 9 @RestController
10 @RequestMapping("/login")
11 @Component
12 public class TestController {
13 
14     /************************   @Value("#{}")   *********************************/
15 
16     //这是  @Value("#{}")
17 
18     @Value("#{1}")
19     private int number; //获取数字 1
20 
21     @Value("#{'Spring Expression Language'}") //获取字符串常量
22     private String str;
23 
24 
25     @Value("#{dataSource.jdbcUrl}") //获取bean的属性
26     private String jdbcUrl;
27 
28     /**************************   @Value("${}")  ***********************************/
29 
30     // @Value("${}") 有两种用法
31     //1.从properties配置文件中读取数据
32     @Value("${test_value}") //获取字符串常量
33     private String str1;  //str1 = hello world
34     
35     //2.为方法参数赋值
36     @Value("${test_value}")
37     public void test(String s){
38         System.out.println(s);  // s = hello world
39     }
40     
41     
42 } 
复制代码

@Value("#{}")   SpEL表达式
@Value("#{}") 表示SpEl表达式通常用来获取bean的属性,或者调用bean的某个方法。当然还有可以表示常量

 

posted @   低调的小白  阅读(1919)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示