在公司培训中接触到SSH框架,感觉老师讲的有些抽象,自己在网上搜索了很多这方面的资料,这里整理些一些基础知识和自己的学习的思路总结。
SSH框架是struts+spring+hibernate的集成框架,是目前较流行的一种Web应用程序开源框架,用于构建灵活、易于扩展的多层Web应用程序。
其中:
- struts是一个开源框架,它通过采用Java Servlet/JSP技术,实现了基于Java EE Web应用的Model-View-Controller(MVC)设计模式,是SSH框架的基础框架。
有两代:struts1和struts2。
- spring是一个开源框架,是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架,由 7 个定义良好的模块(或者叫组件)组成(详细请参考baidu)。
特征:
- 轻量:完整的Spring框架可以在一个大小只有1MB多的JAR文件里发布
- 控制反转(IoC:Inversion of Control),可以认为是促进了层与层之间的松耦合(层指的是表现层,业务层等)
- 面向切面(AOP:Aspect Oriented Programming),(详细请参考baidu)
- 容器(Container):根据配置文件自动生成对象及属性等,不用编写任何code来产生对象
- hibernate是一个开源框架,是一个对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库 (DB,DataBase)。
- JDBC(Java Data Base Connectivity,java 数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。
综上,SSH框架是struts+spring+hibernate三个开源框架组成的集成框架。
SSH框架的系统从职责上分为四层:表示层(页面交互)、业务逻辑层(服务组件,数据处理)、数据持久层(数据库)和域模块层(实体层)。