Spring纯注解开发

Spring纯注解开发

脱离了xml配置的开发,直接把数据保存在Spring内存里面,

首先学习的是 @Configuration 注解
这个注解就是说明这个类是直接放在Spring内存中的不经过xml配置,在类上面写上这个之后,这个类就直接存在于Spring内存之中

@Configuration   //加上这个注解之后就表示这是一个Spring配置类
public class SpringConfiguration(){}

虽然这个类它不经过xml配置,但是其他类需要,如果我们要让这个类获得其他的类在xml里面的配置应该怎么办?------------我们就需要学习注解 @ComponentScan(“需要扫描的包”)---------目的就是替代xml里面的组件扫描操作,这样我们就能得到应该包里面所有的类了而且不经过xml配置

@Configuration   //加上这个注解之后就表示这是一个Spring配置类
@ComponentScan("com.zhiyou100")  //加上这个替代组件扫描   内部写的要扫描的包
public class SpringConfiguration{}

现在问题是,那么多的包,那么多的类,我们要准确的找出我们想要的哪个类的对象应该怎么办???---------现在我们就要学习 @Bean 注解 首先@Bean只能写在方法上面,并且此方法返回一个类对象,我们只需要调用方法就能获得我们想要的对象了

public class WireThirdLibClass {
    @Bean
    public ThirdLibClass getThirdLibClass() {
        return new ThirdLibClass();
    }
}

上面我们以及能完全的操作,但是如果我们像完全不会借助xml,我们想要加载数据源怎么办???
下面我们就说到 @PropertySource 此注解 目的就是记载数据源,把数据源读取到Spring中
先写一个db.properties文件

jdbc.driverClass=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql:///mybatis01
jdbc.username=root
jdbc.password=root

再写注解代码

@PropertySource(" db.properties")//读取配置文件
public class DBUtil{
    //根据  key-value键值对 , 来给属性赋值
    @Value("${jdbc.driverClass}")  
    private String driver;
    @Value("${jdbc.url}")
     private String url;
    @Value("${jdbc.username}")
     private String username;
    @Value("${jdbc.password}")
     private String password;
}

这样就把我们配置文件里面的数据,配置给了我们类里面的属性,我们就能够调用了

上面说到了用@PropertySource读取配置文件 如果我们想要读取其他的xml文件里面的信息我们应该怎么办 我们就需要用到-----@import-----此注解来引入文件
比如我们想要引入一个类的字节码文件

//这是主配置类
@Configuration   //加上这个注解之后就表示这是一个Spring配置类
@ComponentScan("com.zhiyou100")  //加上这个替代组件扫描   内部写的要扫描的包
@Import(DBUtil.class)//在主配置类里面引入DBUyil配置类
public class SpringConfiguration{}

我们接下来就是测试,如果我们想要把我们类里面的数据给测似乎类测试这么操作,我们没有xml配置文件所以不能使用 new ClassPathXmlApplicationContext(“applicationContext.xml”);
我们只能使用 AnnotationConfigApplicationContext

@Test
public void test01(){
    new AnnotationConfigApplicationContext("对应配置类名.class")
}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值