Spring依赖注入

Spring依赖注入

首先在config包下定义一个SpringConfig类用@Configuration注解作为spring容器,

用@ComponentScan(“”)里面写需要扫描包的范围

对于实体类的装配:

使用@Autowired注解

@Service
public class BookServiceImpl implements BookService {
    @Autowired
    private BookDao bookDao;


    @Override
    public void save() {
        System.out.println("bookService");
        bookDao.save();
    }
}

对于实体类里面的属性,可以使用@Value()注解配置

也可以加载properties资源文件中的内容,先使用PropertySource()注解,里面写加载的资源文件的名称,再在@Value(${})括号内填键名即可使用properties文件

@Repository
@PropertySource("jdbc.properties")
public class BookDaoImpl implements BookDao {
    @Value("${name}")
    private String name;
    @Override
    public void save() {
        System.out.println("bookDao..."+name);
    }
}

第三方bean管理

1.在config包下定义专门的类存放,使用@Bean注解,即可在其他地方使用该类

@PropertySource("jdbc.properties")//引入外部properties文件
public class JdbcConfig {
    //获取第三方bean对象
    //1.定义一个方法获得要管理的对象
    //2.添加@Bean,表示当前方法的返回值是一个bean
    @Value("${driverClassName}")
    private String driverClassName;
    @Bean
    //对第三方注入需要在函数体里面声明
    public DataSource dataSource(BookDao bookDao) {
        System.out.println(bookDao);
        DruidDataSource ds = new DruidDataSource();
        ds.setDriverClassName(driverClassName);
        ds.setUrl("jdbc:mysql://localhost");
        ds.setUsername("root");
        ds.setPassword("1234");
        return ds;
    }
}

在拥有@Configuration注解类的下方,使用@Import({JdbcConfig.class})注解,{}内支持使用数组的形式导入第三方Bean

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值