在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
今天咋们要学习的是SpringMVC框架中Spring与Web环境集成的内容,主要涉及的知识点有ApplicationContext应用上下文获取方式,Spring提供获取应用上下文的工具,导入Spring集成web的坐标,配置ContextLoaderListener监听器以及通过工具获得应用上下文对象。下面我们来看看具体的学习内容吧~
1、ApplicationContext应用上下文获取方式
应用上下文对象是通过new ClasspathXmlApplicationContext(spring配置文件) 方式获取的,但是每次从容器中获得Bean时都要编写new ClasspathXmlApplicationContext(spring配置文件) ,这样的弊端是配置文件加载多次,应用上下文对象创建多次。
在Web项目中,可以使用ServletContextListener监听Web应用的启动,我们可以在Web应用启动时,就加载Spring的配置文件,创建应用上下文对象ApplicationContext,在将其存储到最大的域servletContext域中,这样就可以在任意位置从域中获得应用上下文ApplicationContext对象了。
2、Spring提供获取应用上下文的工具
上面的分析不用手动实现,Spring提供了一个监听器ContextLoaderListener就是对上述功能的封装,该监听器内部加载Spring配置文件,创建应用上下文对象,并存储到ServletContext域中,提供了一个客户端工具WebApplicationContextUtils供使用者获得应用上下文对象。
所以我们需要做的只有两件事:
一是在web.xml中配置ContextLoaderListener监听器(导入spring-web坐标);二是使用WebApplicationContextUtils获得应用上下文对象ApplicationContext。
3、导入Spring集成web的坐标
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>5.0.5.RELEASE</version>
</dependency>
4、配置ContextLoaderListener监听器
<!--全局参数-->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</context-param>
<!--Spring的监听器-->
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
5、通过工具获得应用上下文对象
ApplicationContext applicationContext =
WebApplicationContextUtils.getWebApplicationContext(servletContext);
Object obj = applicationContext.getBean("id");
最后,总结一下Spring与Web环境集成的知识要点:Spring集成web环境步骤是先配置ContextLoaderListener监听器,然后使用WebApplicationContextUtils获得应用上下文。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Java开发中abstract class 和 interface 有什么区别?
含有 abstract 修饰符的 class 即为抽象类,abstract 类不能创建的实例对象。含有 abstract 方法的类必须定义为 abstract class,abstract class 类中的方法不必是抽象的。abstract class 类中定义抽象方法必须在具体(Concrete)子类中实现,所以,不能有抽象构造方法或抽象态方法。
7561
2019-05-24 15:31:52
Java程序员培训完好就业吗?
Java程序员培训完好就业吗?相信这是许多想要转行或是深造学习Java的人共同关注的问题。Java作为近些年来深受程序员喜爱的编程语言,就业前景当然不错,但是完全说培训完Java就能就业,也太过绝对了。毕竟这还要考虑到,培训班的教学质量和你自身的学习情况。
6879
2019-07-31 19:01:38
JavaEE在线培训班课程在线学习效果怎么样?
Java作为最流行的编程语言受到了许多人的喜爱,也正因如此,不少人跃跃欲试想要学习Java。如今Java的培训机构遍地开花,由于时间和地域的限制,JavaEE在线培训班课程也应运而生,不过也会有人担忧,在线学习的效果真的能比得上线下的面授课吗?现在小编就为大家分析分析。
5765
2019-12-16 18:42:49
程序员常用的JVM 配置参数汇总
JVM可以算是初级程序员进阶高级程序员必须要掌握的核心技能之一。另外,在许多面试过程中,JVM也是检验Java程序员能力水平的试金石。今天我们不谈Java底层实现的原理,而是为大家整理汇总了一些常见的,希望对大家编写代码有所帮助。
4772
2020-03-04 18:08:39
线程池经典面试题整理附答案
线程池是一种多线程处理形式,它是Java开发面试中的必考知识点,尤其是在一些大厂的求职面试中,线程池是对求职者考核的重点。为了帮助大家可以更好地通过面试,本文特地为大家整理了线程池经典面试题并附上了答案,下面一起来尝试着做一做吧!
8786
2020-06-17 14:44:17