Struts2是web框架,处于表现层,hibernate是ORM(面向对象编程),处于持久层
Spring是容器框架,为了配置bean对象和维护bean对象之间关系的一个容器框架
IOC:控制反转(inverse of control) == DI: 依赖注入
AOP
DI注入:1.setter注入 2.构造器注入
AOP:面向切面编程
OOP:面向对象编程
开闭原则:开-扩展 闭-不修改
单一职责:一个方法只做一个事情
AOP:(日志等使用)————面向接口(运用多态)
对关注点进行模块化
切面:相当于一个公共的方法
代理:静态代理和动态代理
目标对象:被代理对象 列如:房东(被代理对象) 中介(代理对象) 客人(目标代理)
动态代理:
1.一种基于接口的方式(JDK自带的动态代理)
2.一种是基于类的方式(cglib的代理)
ssh整合
1.先整合spring ,之后的spring全部接管hibernate和Struts2 导入spring包
测试spring是否可以正常工作
2.整合hibernate,导入hibernate包
在spring中配置hibernate,配置一个数据源(数据库连接池)—-dbcp/c3p0
Jdo:Java数据库对象
Jpa:Java持久化接口
在整合到spring中,因为要整合spring 也就是spring 接管hibernate
所以把hibernate.cfg.xml的配置 要配置到spring配置文件中
1.在spring中,首先配置一个数据源(dbcp/c3p0/jdbc/druid)
2.再配置一个sessionFactoty(需要给sessionFactroy注入一个数据源)
3.因为spring要结果hibernate的事务,所以需要配置一个事务管理器
4.在通过aop的方式来加入事务管理
3.整合Struts2 导入Struts2的jar包
测试Struts2是否可以正常工作
导入Struts2-spring-plugin-2.5.5.jar包,整合Struts需要的插件包