1、Book.java
- @PropertySource(value="classpath:配置文件地址") 替代 <context:property-placeholder location="配置文件地址"/>
|-----------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| @Value("{book.bid}")** **@Value("{book.bname}") @Value("{book.price}")** | **\** **\ {book.bname}"/\>** **\ javapackage com.atguigu.ioc; import lombok.Data; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.PropertySource; import org.springframework.stereotype.Component; @Data @Component @PropertySource(value = "classpath:book.properties", encoding = "UTF-8") public class Book { @Value("${book.bid}") private Integer bid; @Value("${book.bname}") private String bname; @Value("${book.price}") private Integer price; }
2、book.properties
javabook.bid=1 book.bname=Java入门经典 book.price=99
3、MySpringConfiguration.java
- @ComponentScan(basePackages={"包","包"}) 替代 <context:component-scan base-package="com.atguigu.ioc,等等">
javapackage com.atguigu.ioc; import org.springframework.context.annotation.ComponentScan; @ComponentScan public class MySpringConfiguration { }
4、BookTest.java
javapackage com.atguigu.ioc; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.BeanFactory; import org.springframework.context.annotation.AnnotationConfigApplicationContext; public class BookTest { private BeanFactory beanFactory; @BeforeEach public void setup() { beanFactory = new AnnotationConfigApplicationContext(MySpringConfiguration.class); } @Test public void test() { System.out.println(beanFactory.getBean(Book.class)); } } //Book(bid=1, bname=Java入门经典, price=99)
5、父工程pom.xml
XML<packaging>pom</packaging> <modules> <module>pro04-spring-ioc-xml</module> <module>pro00-spring-handwrite</module> <module>pro05-spring-ioc-annotation</module> </modules> <properties> <maven.compiler.source>17</maven.compiler.source> <maven.compiler.target>17</maven.compiler.target> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <spring.version>6.0.6</spring.version> <junit.version>5.3.1</junit.version> <lombok.version>1.18.20</lombok.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-api</artifactId> <version>${junit.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>${lombok.version}</version> </dependency> </dependencies> </dependencyManagement>
6、子工程pom.xml
XML<parent> <groupId>com.atguigu</groupId> <artifactId>pro-ssm</artifactId> <version>1.0-SNAPSHOT</version> </parent> <artifactId>pro05-spring-ioc-annotation</artifactId> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> </dependency> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-api</artifactId> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> </dependency> </dependencies>
Spring-IOC-@Value和@PropertySource用法
丁总学Java2023-11-29 19:37
相关推荐
桦说编程6 小时前
Java 中如何创建不可变类型lifallen6 小时前
Java Stream sort算子实现:SortedOpsIT毕设实战小研7 小时前
基于Spring Boot 4s店车辆管理系统 租车管理系统 停车位管理系统 智慧车辆管理系统没有bug.的程序员7 小时前
JVM 总览与运行原理:深入Java虚拟机的核心引擎甄超锋8 小时前
Java ArrayList的介绍及用法阿华的代码王国8 小时前
【Android】RecyclerView复用CheckBox的异常状态Zyy~8 小时前
《设计模式》装饰模式A尘埃8 小时前
企业级Java项目和大模型结合场景(智能客服系统:电商、金融、政务、企业)青云交9 小时前
Java 大视界 -- 基于 Java 的大数据可视化在城市交通拥堵治理与出行效率提升中的应用(398)CHEN5_029 小时前
【Java基础面试题】Java基础概念