1,配置环境
配置好servlet和spring框架
2,创建web的servlet类
类中写创建app对象,再通过app对象获取spring容器中的bean。
配置web.xml
启动tomcat,在浏览器中后输入/userServlet 就会执行UserServlet中的doget方法。
3,优化app对象的创建
因为web层不止有一个servlet,所有每次都会创建app对象,造成浪费。故优化通过ContextLoaderListener监听器,在tomcat启动时创建app对象,并通过ServletContext对象把app对象上传到ServletContext域中,web层的servle类需要app对象时,就通过ServletContext对象get方法获取,这样app对象全程就只创建了一次。
(1),创建监听器类
(2)配置web.xml
(3)修改servlet。
4优化applicationContext.xml配置文件名
通过全局变量去解耦合
(1)去web.xml里设置全局变量
(2)在监听器中通过servletContext对象获取全局变量
5,优化ServletContext对象获取app对象
通过一个工具类将获取app对象的方法封装起来,因为要获取app对象需要向ServletContext域中提交获取对象名,才能获取,将其封装后,我们只需调用该工具类,而不用知道上传到ServletContext域中app类的名字
(1)创建工具类
(2)类中封装用名字获取app对象的静态方法。
(3)servlet调用时不再用名字获取,而用这个工具类的方法获取,解名字的耦合。
6,使用spring提供的获取应用上下文工具
(1)导入Spring-web的坐标
(2)配置web.xml文件
(3)配置全局变量,供监听器找到spring配置文件
(4)servlet使用监听器和工具类
监听器的使用只需要在web.xml配置中加入参数(spring容器的文件位置)到全局变量中去。监听器就可以在tomcat启动的时候将app容器对象放到servletContext域中供其他servlet调用。工具类只是封装了一个从servletContext域获取app容器对象需要名字的方法。使用的时候只需先获取servlet对象,在获取里面的app对象即可。
总结:一共有三个优化,呈呈递进,方面我们了解和使用