spring 配置类

spring 框架 三个主要部分:1)bean容器;2)aop;3)spring mvc

一、bean容器的作用。

通常创建对象通过调用构造函数完成,spring容器通过配置(配置文件或配置类)来实现对象创建工作,实现ioc(DI)。

1. 配置bean容器 (对象及依赖关系)的方式有以下两种:

  1)通过xml配置文件

<?xml version="1.0" encoding="UTF-8"?>
<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
        https://www.springframework.org/schema/beans/spring-beans.xsd">

    <bean id="..." class="...">  
        <!-- collaborators and configuration for this bean go here -->
    </bean>

    <bean id="..." class="...">
        <!-- collaborators and configuration for this bean go here -->
    </bean>
    <context:component-scan base-package="com.vrv.paw..."/>
    <!-- more bean definitions go here -->
 </beans>

      ApplicationContext ctx = new ClassPathXmlApplicationContext("application.xml")

 2)配置类。

用java的类来替代配置文件,该类必须加上注解@Configuration.用类的方法来创建bean对象

@ComponentScan("cn.edu.jxnu.sse.domain")
@Import(DataSourceConfiguration.class)
public class SpringConfiguration {

   //......
}

 

ApplicationContext ctx = new AnnotationConfigApplicationContext(SpringConfiguration.class);

2.   注解 。

如果待配置的Bean很多,上述方式配置太繁琐,可以利用注解简化配置。

1)在类上加@Component注解,使该类能被Bean容器实例化。

2)在配置类上加注解

@ComponentScan("cn.edu.jxnu.sse.domain")

或在配置文件上利用包扫描标签

  <context:component-scan base-package="com.vrv.paw..."/>

 

3.  与比配置文件相比,配置类简化了容器配置,springboot多采用配置类的形式。

4. 配置类中bean定义

1)定义一个Bean,可以用定义一个方法,在方法中,创建该bean的对象,并设置相关属性值,然后返回该对象。

2)注解方式。

待实例化的每个类添加@Component注解,并在配置类上添加@ComponentScan("cn.edu.jxnu.sse.domain")

注解@Component可以表示该类可以通过容器实例化,

3)实例化对象的属性值(非关联属性)

可以通过注解@Value来设置,也可以由属性文件设置,并在类中(待实例化的类,非配置类)添加注解@ConfigurationProperties指定配置文件。

5.导入配置

当配置太复杂,可以分为多个配置类,然后在总配置类中用注解@Import导入其他配置(可以是配置类,也可是配置文件)。

在配置文件中,可以用<import resource="abc/abc.xml">标签来导入其他配置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值