重拾Spring(九)Spring整合Junit、Web

一、整合Junit

  • 导入jar包
    基本 :4+1
    测试:spring-test…jar

    1. 让Junit通知spring加载配置文件
    2. 让spring容器自动进行注入
  • 修改测试类

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations="classpath:applicationContext.xml")
public class TestApp {

    @Autowired  //与junit整合,不需要在spring xml配置扫描
    private AccountService accountService;

    @Test
    public void demo01(){
//      String xmlPath = "applicationContext.xml";
//      ApplicationContext applicationContext = new ClassPathXmlApplicationContext(xmlPath);
//      AccountService accountService =  (AccountService) applicationContext.getBean("accountService");
        accountService.transfer("jack", "rose", 1000);
    }

}

二、整合web

  1. 导入jar包
    spring-web.xml
    这里写图片描述

  2. tomcat启动加载配置文件
    servlet –> init(ServletConfig) –> <load-on-startup>
    filter –> init(FilterConfig) –> web.xml注册过滤器自动调用初始化
    listener –> ServletContextListener –> servletContext对象监听【】
    spring提供监听器 ContextLoaderListener –> web.xml <listener><listener-class>….
          如果只配置监听器,默认加载xml位置:/WEB-INF/applicationContext.xml
    这里写图片描述

  3. 确定配置文件位置,通过系统初始化参数
    ServletContext 初始化参数 web.xml

<context-param>
            <param-name>contextConfigLocation
            <param-value>classpath:applicationContext.xml

具体如下:

 <!-- 确定配置文件位置 -->
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:applicationContext.xml</param-value>
  </context-param>

  <!-- 配置spring 监听器,加载xml配置文件 -->
  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  1. 从servletContext作用域 获得spring容器 (了解)
// 从application作用域(ServletContext)获得spring容器
//方式1: 手动从作用域获取
ApplicationContext applicationContext = 
        (ApplicationContext) this.getServletContext().getAttribute(WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE);
//方式2:通过工具获取
ApplicationContext apppApplicationContext2 = 
        WebApplicationContextUtils.getWebApplicationContext(this.getServletContext());
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值