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

Spring-IOC-@Value和@PropertySource用法

1、Book.java

  • @PropertySource(value="classpath:配置文件地址") 替代  <context:property-placeholder location="配置文件地址"/>
  • @Value("${book.bid}")

    @Value("${book.bname}")

    @Value("${book.price}")

    <bean id="book"  class="com.atguigu.ioc.Book">

               <property name="bid"  value="${book.bid}"/>

               <property name="bname" vlaue="${book.bname}"/>

               <property name="price" value="${book.price}"/>

    </bean>

package 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

book.bid=1
book.bname=Java入门经典
book.price=99

3、MySpringConfiguration.java

  • @ComponentScan(basePackages={"包","包"}) 替代 <context:component-scan base-package="com.atguigu.ioc,等等">
package com.atguigu.ioc;
import org.springframework.context.annotation.ComponentScan;
@ComponentScan
public class MySpringConfiguration {
}

4、BookTest.java

package 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;@BeforeEachpublic void setup() {beanFactory = new AnnotationConfigApplicationContext(MySpringConfiguration.class);}@Testpublic void test() {System.out.println(beanFactory.getBean(Book.class));}
}
//Book(bid=1, bname=Java入门经典, price=99)

 5、父工程pom.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 

    <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>
http://www.lryc.cn/news/238720.html

相关文章:

  • 如何理解Python中一切皆对象?
  • 【如何学习Python自动化测试】—— 鼠标键盘操作
  • 随笔-事儿就这么个事儿
  • django理解03 数据库引入
  • Jtti:windows中apache怎么实现负载均衡
  • 2311rust,到43版本更新
  • 前端埋点上报的几种方式
  • 外部 prometheus监控k8s集群资源
  • centos安装神通数据库
  • 汇编-PUSHFD和POPFD标志寄存器值压栈和出栈
  • 基于SSM的进销存管理系统设计与实现
  • Django DRF限流组件
  • UEC++ day7
  • win11,安装python,pip,和opencv
  • kafka入门(一):kafka消息发送与消费
  • CMap数据库筛选化学药物
  • mysql命令行(mysql-client)连接数据库
  • sklearn中的TfidfTransformer和gensim中的TfidfModel的区别
  • spring注解
  • SpringCloud实用篇02
  • Nginx快速入门教程,域名转发、负载均衡
  • ElasticSearch之健康状态
  • java io流中为什么使用缓冲流就能加快文件读写速度
  • 【鸿蒙最新全套教程】<HarmonyOS第一课>1、运行Hello World
  • 求二叉树中指定节点所在的层数(可运行)
  • Ubuntu18 Opencv3.4.12 viz 3D显示安装、编译、移植
  • EPSon打印机更换色带
  • 电脑游戏录屏软件,记录游戏高光时刻
  • Hadoop性能调优建议
  • 算法的奥秘:常见的六种算法(算法导论笔记2)