spring基础

本文深入探讨Spring框架的核心特性,包括非侵入式设计、控制反转(IOC)、依赖注入(DI)以及面向切面编程(AOP)。同时,介绍了Spring5中的关键组件,如spring-beans、spring-context等。此外,还详细阐述了Junit4的常用注解,如@Test、@Before和@After等,及其在测试中的作用和执行顺序。
摘要由CSDN通过智能技术生成

1、spring 的优良特性

  1. 非侵入式:基于Spring开发的应用中的对象可以不依赖于Spring的API
  2. 控制反转:IOC – Inversion of Control,指的是将对象的创建权交给Spring去创建。使用Spring之前,对象的创建都是由我们自己在代码中new创建。而使用Spring只后,对象的创建都是交给了Spring框架
  3. 依赖注入:DI – Dependency Injection,是指依赖的对象不需要手动调用setXX方法去设置,而是通过配置赋值。
  4. 面向切面编程:Aspect Oriented Programming – AOP
  5. 容器:Spring是一个容器,因为它包含并且管理应用对象的生命周期
  6. 组件化:Spring实现了使用简单的组件配置组合成一个复杂的应用。在Spring中可以使用xml和Java注解组合这些对象。
  7. 一站式:在IOC和AOP的基础上可以整合各种企业应用的开源框架和优秀的第三方类库(实际上Spring自身也提供了表述层的SpringMVC和持久层的Spring JDBC)
    2、Spring5 中的组件(必要组件)
    jar 包 组件说明
    spring-beans-5.2.9.RELEASE.jar 提供IOC(控制反转)的基础实施
    spring-context-5.2.9.RELEASE.jar 是在IOC基础功能上的扩展服务
    spring-context-support-5.2.9.RELEASE.jar 对Spring-context的扩展
    spring-core-5.2.9.RELEASE.jar Spring的核心组件
    spring-expression-5.2.9.RELEASE.jar Spring对表达式的支持
    3、Spring IOC和DI
  8. IOC 反转控制是Spring的基础,inversion of Control。简单地说就是创建对象由以前的程序员自己new构造方法来调用,变成了交由Spring来创建对象。
  9. DI 依赖注入 Dependency Inject。简单地说就是拿到对象的属性,已经被注入好相关值了,直接使用即可。
    4、Junit4常用注解
  10. @Test:测试方法,在这里可以测试期望异常和超时时间
    ① timeout:单位是毫秒,在规定的时间内test完就是:Process finished with exit code 0,
    超时了之后就会报:test timed out after (指定时间) milliseconds
    ② expected:期望异常。(例:指定:NullPointerException,意外:NumberFormatException)
    test完报出了期望异常就是:Process finished with exit code 0;
    如果没有期望异常:Expected exception: java.lang.NullPointerException;
    但是出了异常,但不是我指定的异常:
    Unexpected exception, expected<java.lang.NumberFormatException> but was<java.lang.NullPointerException>。
  11. @Before:初始化方法,会在@Test执行前执行。注意:有多少个@Test就会执行多少次@Before。
  12. @After:释放资源,会在@Test执行后执行。注意:有多少个@Test就会执行多少次@After。
  13. @BeforeClass:所有测试执行前执行,只执行一次,且必须为 static void。
  14. @AfterCalss:所有测试执行后执行,只执行一次,且必须为 static void。
  15. @Ignore:忽略测试的方法。
    注意: @Test 有多少个(@Ignore 忽视掉的不算),@Before 和 @After 就会执行多少次。
    执行顺序:
    执行顺序和写的顺序无关,只认注解。
    一个Junit4的单元测试用例执行顺序为:@BeforeClass --> @Before --> @Test --> @After --> @AfterClass
    每一个测试方法的调用顺序为:@Before --> @Test --> @After
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值