spring注解开发

7.管理bean之注解驱动
①流程

注解:1.可以写在类上,属性上

​ 2.可以简化xml配置

​ 3格式:@[注解名称](属性=value)

常用创建bean对象的注解:

​ (1) @component

​ (2) @service

​ (3)@controller

​ (4)@Repository

实现步骤1.引入aop的jar包

2.开启组件扫描

​ ①要先声明context

<context:component-scan base-package="com.xyq.spring_1"></context:component-scan>

3.有以下service类

@Component
public class myService {

        public void add(){
            System.out.println("service已添加");
        }


}

测试类:

@Test
public void testAdd(){

    ApplicationContext context =new ClassPathXmlApplicationContext("bean1.xml");

context.getBean("myService", myService.class).add();


}

注意注解后面可以跟值,value意味着xml里bean的id 默认的话是类的名称首字母小写

②如何使用注解注入属性

有dao接口和myDao子类

public interface   dao {
       public void add();

}
@Repository
public class myDao implements dao{


    @Override
    public void add() {
        System.out.println("dao has created and add");
    }

}

将myDao类中加上 创建bean的注解

并在myService中使用@autowrie注解

@Component
public class myService {

        @Autowired
         myDao myDao;


        public void add(){
            System.out.println("service已添加");
            myDao.add();
        }


}

还有@qulified

和autowire一起使用,后面要跟值,意识是要用名称id来匹配

@resource

可以根据类型也可以根据名称注入,主要看你写不写后面的值

@value 注入普通类型的属性

8. 完全注解开发

​ 我们想把最后xml也给去掉,于是就会想到创建一个配置类

并且将其加载到程序里,发挥原本xml的功能

1.创建注解类springConfig

import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;

@Configuration
@ComponentScan(basePackages = {"com.xyq"})
public class springConfig {
    
}

测试类要修改一下

不在使用原本的自实现类,使用和注解相关的子类

@Test
public void testconfig(){

    ApplicationContext context =new AnnotationConfigApplicationContext(springConfig.class);

    context.getBean("myService", myService.class).add();


}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值