Spring 学习历程(二)

JUnit测试

  • maven导入包
<!-- https://mvnrepository.com/artifact/junit/junit -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.10</version>
            <scope>test</scope>
        </dependency>

<!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>4.3.20.RELEASE</version>
        </dependency>
  • 关键词
package com.jing.spring.ioc;

import lombok.*;
import org.junit.After;
import org.junit.Before;
import org.springframework.beans.BeansException;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.util.StringUtils;

/**
 * @Desc
 * @auther jingguoliang
 * @date 2018/11/4
 */
@NoArgsConstructor
@Getter
@Setter
public class UnitTestBase {

    private ClassPathXmlApplicationContext context;
    private String springXmlPath;

    public UnitTestBase(String springXmlPath) {
        this.springXmlPath = springXmlPath;
    }

    @Before
    public void before(){
        if(StringUtils.isEmpty(springXmlPath)){
            springXmlPath = "classpath*:spring-*.xml";
        }
        try {
            context = new ClassPathXmlApplicationContext(springXmlPath);
            context.start();
        }catch (Exception e){
            e.printStackTrace();
        }finally {

        }

    }

    @After
    public void  after(){
        context.destroy();
    }

    /**
     * 获取IOC容器中的注入Bean对象
     * @param beanId
     * @param <T>
     * @return
     */
    protected <T extends Object> T getBean(String beanId){
        try {
            return (T)context.getBean(beanId);
        }catch (BeansException e){
            e.getStackTrace();
            return null;
        }
    }
    protected <T extends Object> T getBean(Class<T> clazz) {
        try {
            return context.getBean(clazz);
        } catch (BeansException e) {
            e.printStackTrace();
            return null;
        }
    }

}

LomBook使用

  • @Setter
  • @Getter
  • @NoArgsConstructor

 

 

 

 

posted @ 2018-11-07 19:55  话·醉月  阅读(198)  评论(0编辑  收藏  举报