Spring自动注入配置文件的四种方式

    @Value("${wechat.url.token}")
    private String token;

    // 设置默认值,当注入失败取默认值
    @Value("${wechat.url.token: xxxxx}")
    private String token;
@Component
public class RobotUtils {

    // 可以直接调用 RobotUtils.active 获取属性
    public static String active;

    @Value("${spring.profiles.active}")
    private void setActive(String active){
        RobotUtils.active = active;
    }
}
@Data
@ConfigurationProperties("wechat.config")
@Component
public class WeChatConfig {

    // 一次性初始化所有变量
    private String tokenUrl;

    private String sendUrl;

    private String grantType;
}
    import org.springframework.core.env.Environment;


    @Resource
    private Environment environment;

    // 通过配置文件key获取属性
    environment.getProperty(key);

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Spring 中,可以使用配置文件来进行依赖注入。有两种常用的配置文件方式:XML 配置和注解配置。 1. XML 配置方式: 首先,在配置文件中定义 bean,指定其 id 和 class。然后,通过构造函数或者属性的方式注入依赖项。以下是一个示例: ```xml <!-- 配置文件:applicationContext.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/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <!-- 定义一个需要注入的 bean --> <bean id="userService" class="com.example.UserService"> <!-- 构造函数注入 --> <constructor-arg ref="userRepository" /> </bean> <!-- 定义另一个 bean --> <bean id="userRepository" class="com.example.UserRepository"> <!-- 属性注入 --> <property name="dataSource" ref="dataSource" /> </bean> <!-- 定义数据源 bean --> <bean id="dataSource" class="com.example.DataSource" /> </beans> ``` 在代码中使用 ApplicationContext 加载配置文件,并获取需要的 bean: ```java import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class MyApp { public static void main(String[] args) { // 加载配置文件 ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml"); // 获取需要的 bean UserService userService = context.getBean("userService", UserService.class); userService.doSomething(); } } ``` 2. 注解配置方式: 使用注解配置可以更简洁地实现依赖注入。在类上使用 @Component 或其派生注解进行标记,表示将该类注册为一个 bean。然后,使用 @Autowired 注解自动注入依赖项。以下是一个示例: ```java import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @Component public class UserService { private UserRepository userRepository; @Autowired public UserService(UserRepository userRepository) { this.userRepository = userRepository; } // 其他方法... } @Component public class UserRepository { private DataSource dataSource; @Autowired public void setDataSource(DataSource dataSource) { this.dataSource = dataSource; } // 其他方法... } @Component public class DataSource { // 数据源相关配置... } ``` 在代码中使用 ApplicationContext 加载配置文件,并获取需要的 bean: ```java import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext; public class MyApp { public static void main(String[] args) { // 加载配置类 ApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class); // 获取需要的 bean UserService userService = context.getBean(UserService.class); userService.doSomething(); } } ``` 需要注意的是,使用注解配置方式时,需要在配置类上使用 @Configuration 注解,来指示它是一个配置类,例如: ```java import org.springframework.context.annotation.Configuration; @Configuration public class AppConfig { // 配置相关的 bean } ``` 这样就完成了 Spring 的依赖注入配置文件的介绍。希望对你有所帮助!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值