配合sevlet的监听器实现。

一、spring在web应用中使用和spring在非web应用中使用有什么区别?

(1)jar包不一样

需要额外导入spring web相关的包:

  1. spring-web-4.2.5.RELEASE.jar
  2. spring-webmvc-4.2.5.RELEASE.jar

(2)spring的配置文件

并没有什么不同。

(3)如何创建ioc容器

1.非web应用在main方法中直接创建

2.web应用应该在web应用被服务器加载时就创建ioc容器

不能再web应用已经运行了再来创建。因为运行的时候可能已经需要使用ioc容器了,这个时候再来创建,效率低,速度慢。

那么我们怎么知道服务器什么时候加载呢?

在ServletContextListener的contextInitialized(ServletContextEvent arg0)方法中实现ioc容器,那么在web应用被启动的时候,就可以立即使用ioc容器了。

3.在web应用的其他组件中如何访问ioc容器

在创建了ioc容器后,可以把容器对象放在servlet context(即application域)的一个属性中

4.spring配置文件的名字和位置应该也是可配置的

将其配置到当前web应用的初始化参数中较为合适。

二、具体实现

项目结构:

1

(1)导入以下包

  1. commons-logging-1.2.jar
  2. spring-aop-4.2.5.RELEASE.jar
  3. spring-aspects-4.2.5.RELEASE.jar
  4. spring-beans-4.2.5.RELEASE.jar
  5. spring-context-4.2.5.RELEASE.jar
  6. spring-core-4.2.5.RELEASE.jar
  7. spring-expression-4.2.5.RELEASE.jar
  8. spring-jdbc-4.2.5.RELEASE.jar
  9. spring-orm-4.2.5.RELEASE.jar
  10. spring-test-4.2.5.RELEASE.jar
  11. spring-tx-4.2.5.RELEASE.jar
  12. spring-web-4.2.5.RELEASE.jar
  13. spring-webmvc-4.2.5.RELEASE.jar
  14. spring-websocket-4.2.5.RELEASE.jar

(2)写个listener

(2)写个实体类bean

(3)写个servlet

(4)配置spring配置文件

(5)配置web.xml

(6)写个实现页面

访问效果:

1

可以看见访问时ioc容器自动配置并且返回了结果。

这是spring在网络应用的基本思路之一。

三、总结

记录一下。

发表评论

电子邮件地址不会被公开。 必填项已用*标注