spring相关注解以及springJUnit整合测试

本文详细介绍了Spring框架中的核心注解,包括@Repository、@Service、@Controller等,并解释了它们的作用及区别。同时,还介绍了@Value、@Autowired、@Resource等注解的使用方法,以及@Scope、@PostConstruct、@PreDestroy等生命周期相关的注解。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

spring注解:@Repository dao层注解
@Service service层注解
@Controller  web层注解
@Component   最早的注解,后来为了容易区分不同的层,而开发出上面三个注解,以上四个注解功能完全一样,都是
为了在spring容器中创建对象.代替了繁琐的XML配置
就相当于在XML中配置<bean name="" class=""></bean>的方式.


@Scope(scopeName="prototype")指定对象类型为多例,因为默认是singleton(单例)
多例用的是lazy创建模式,即spring容器启动的时候不创建,调用对象的时候创建bean对象,且每次调用都创建新的对象.
单例就是spring容器启动的时候就把对象自动创建出来,每次调用都是同一个对象.有点类似与单例模式中懒汉和恶汉的方式.


@Value 给基本类型对象注入值,可以加在私有属性上,也可以加在set方法上,但加在私有属性上,其实是破坏了面向对象的理念.
因为属性是私有的,对外暴露的只有set get方法,但是为了简便开发,很多时候都是加在属性上.两种方式都行,建议加到
set方法上,用法:@Value(name="tom") 也可简写成@Value("tom")
@Aotowired 自动装配,如果只有一个引用类型的对象,直接使用即可,但是如果有多个对象的话,需要配合@Qualifier(name="")来
指定具体哪一个bean对象,name=的是bean的名字
@Resource(name="")这个方式相当于上面@Autowired和@Qualifier两个注解. 具体用哪个?喜欢哪个用哪个!


@PostConstuct  指定容器启动对象创建之后的初始化方法.
@PreDestroy  在对象销毁,Spring容器关闭之前调用. 注:需单例模式


spring整合junit测试
传统的junit测试需要我们手动创建容器,如果需要调用多个类对象的话,测试代码比较繁琐,所以Spring对junit测试进行了整合,
我们新建测试方法的时候只需要在测试类上面加两个注解
@RunWith(SpringJUnit4ClassRunner.class)  注意括号内没有引号,这个注解的意思是帮我们创建容器
@ContextConfiguration("classpath:applicationContext.xml") 这个注解的意思是帮我们创建容器时,指定加载的XML配置文件
接下来的测试就能在测试类中正常使用spring容器里的任何对象了,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值