Spring ioc 浅记 ----基于注解

第一步:

创建一个maven框架,在pom配置文件里添加依赖

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-aop</artifactId>
            <version>5.2.6.RELEASE</version>
        </dependency>
dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.2.5.RELEASE</version>
        </dependency>

第二步:

在spring配置文件里开启组件扫描(里面写你需要扫描的包)(在开头里面加入这两条语句)

xmlns:context="http://www.springframework.org/schema/context"
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
  <context:component-scan base-package="demo_02"></context:component-scan>

第三步创建类:

@Component(value = "userservice")//如果不写value则默认是类名第一个字母小写,即是我这样写。
public class Userservice {
    public void add() {
        System.out.println("service------");
    }
}

这个@Component的效果与在xml文件写<bean>类似,写注解就不需要写下面这一步,也就是用注解的话,spring xml配置文件里面只用开启组件扫描就行了,不用写其他东西

 <bean id="xxx" class="demo_02.Userservice"></bean>

第四步--测试:

下面getBean里面的“userservice”就是刚才写的注解里面的value名。

 @Test
    public void test03(){
        ApplicationContext context=
                new ClassPathXmlApplicationContext("bean.xml");
        Userservice userservice = context.getBean("userservice", Userservice.class);
        userservice.add();
    }

输出结果:

service------

Process finished with exit code 0

——————————————————————————————————————————

 bean xml 文件也可以用类来代替

新建一个类如下

@Configuration
@ComponentScan(basePackages = {"springioc"})
public class Spring_Config {
}
@Configuration注解是表明这个类是xml文件
@ComponentScan(basePackages = {"springioc"})则是开启扫描注解,同样里面写需要扫描的包

测试类:

不再写bean.xml,下面的getBean也不用写value值里面的名称

@Test
    public void test02(){
        AnnotationConfigApplicationContext applicationContext =
                new AnnotationConfigApplicationContext(Spring_Config.class);
        UserService u = applicationContext.getBean(UserService.class);
        u.test();
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值