SpringBoot 零基础入门笔记02(注解方式)

接上个文章   SpringBoot 零基础入门笔记01

注解方式1:

创建新建类JdbcProperties

如图:

package cn.itcast.config;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;


@Data//编译时添加get set 方法
/***
 * @ConfigurationProperties 是 Spring Boot 中的标签,
 * 它可以让开发者将整个配置文件,映射到对象中,比@Value 效率更高。
 */
@ConfigurationProperties(prefix = "jdbc")

public class JdbcProperties {
    private String url;
    private String driverClassName;
    private String username;
    private String password;
}

修改原来的

JdbcConfig

 

@Configuration
//@PropertySource("classpath:jdbc.properties")
/*启用配置文件*/
@EnableConfigurationProperties(JdbcProperties.class)
public class JdbcConfig {
  /*  @Value("${jdbc.url}")
    String url;
    @Value("${jdbc.driverClassName}")
    String driverClassName;
    @Value("${jdbc.username}")
    String username;
    @Value("${jdbc.password}")
    String password;*/
 /*   @Autowired
    JdbcProperties jdbcProperties;
    public  JdbcConfig(JdbcProperties jdbcProperties){
        this.jdbcProperties=jdbcProperties;
    }*/


/*   注解方式1: @Bean */
    public DataSource dataSource(JdbcProperties prop){

        DruidDataSource dataSource =new DruidDataSource();
        dataSource.setDriverClassName(prop.getDriverClassName());
        dataSource.setUrl(prop.getUrl());
        dataSource.setUsername(prop.getUsername());
        dataSource.setPassword(prop.getPassword());

        return  dataSource;
    }
}

第二种方式:

如果一段属性只有一个Bean需要使用,我们无需将其注入到一个类(jdbcProperties)中,而是直接在需要的地方声明即可

此时可删除 JdbcProperties的类,修改JdbcConfig类

    @Bean
    /**
    * springboot 属性注入2
    * 事实上,如果一段属性只有一个Bean需要使用,我们无需将其注入到一个类(jdbcProperties)中,而是直接在需要的地方声明即可
    *
    * */
    //声明要注入的属性前缀,SpringBoot 会自动把相关属性通过set方法注入到DataSource中
    @ConfigurationProperties(prefix = "jdbc")
    public DataSource dataSource() {
        return new DruidDataSource();
    }

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值