SSH
1.strust2
配置struts的配置文件:struts.xml
web.xml中配置struts2的拦截器
struts2的运行流程:客户端在页面提交数据,页面响应,struts框架找到对应的action进行处理,并返回视图
2.struts2整合spring
struts2整合spring后,action将交由spring创建
spring提供了strutsSpringObjectFactory,structspring工厂创建bean的逻辑为,先根据beanname在spring容器中寻找有没有
如果没有,则自己创建。
spring框架对action提供的是多例管理,对service和dao提供的是单例管理
3.IOC控制反转
将对象的创建权交给IOC容器来创建。
IOC容器包括spring管理的所有bean,IOC容器负责对bean进行实例化
DI依赖注入
action调用service,service依赖action,
所谓依赖注入就是在IOC容器运行期间,动态地将对象的依赖关系注入到对象的属性中去。
DI注入的方式:1.构造参数器注入属性值
2.通过set方法注入属性值
3.命名空间注入
单例与多例,单例就是程序运行期间只创建一次,多例就是使用时创建,使用完释放。
bean的实例化方法:通过类的构造方法(有参与无参),通过静态工厂方法获取bean实例。
spring实例化action的流程:spring框架(applicationContext)被创建,ServletContext被创建,
spring框架中的bean被实例化
客户端发送请求,struts框架根据请求在spring框架中寻找action的bean,
获取spring容器实例和servletContext实例,spring容器获取service的bean,bean
找到之后spring框架将action的bean进行实例化,并将action所依赖的service,dao注入。
程序执行流程:1.程序运行
。。。
2.IOC开发
基于注解的IOC开发