*SSH |
1.是啥
SSH是Struts+Spring+Hibernate的一个集成框架,是目前比较流行的一种web应用程序开源框架!其中Struts控制逻辑关系,Spring解耦,Hibernate操作数据库
2.优点
★各层分工明确,层与层之间解耦
★Hibernate避免了JDBC连接数据库的冗余繁杂
★spring管理用配置文件对象的实例化,更灵活方便
3.框架
这张图的原生是我从网上查到的,我查了很多关于SSH的资料,唯独觉得这张图能表达我目前对SSH的浅层了解,所以我加了一点点自己的想法,这张图可能不太正确,但是它表达了我现在的理解,后期我做了更多的了解之后还会继续更新这张图!
*Struts |
1.是啥?
struts也是一种开源框架,使用它的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间。在SSH中充当表示层的角色。
2.Struts框架流程图
这张图是我在百科上找的,翻译了一下下,根据自己目前单独对Struts的了解,写的话很多文章都写过,我还整理不出来自己能够消化之后的知识与大家分享,所以暂时就先不多做解释了!
*Spring |
1.是啥 Spring是一个分层的JavaSE/EE一站式 轻量级开源框架,解决业务逻辑层和其他各层的松耦合问题。其两大核心就是IOC((Inversion of control))控制反转和AOP(Aspect-Oriented Programming)面向切面编程
2.特征 【IOC】 官方:控制权由对象本身转向容器,由容器根据配置文件去创建实例并创建各个实例之间的依赖关系 我说:以前使用一个类啥的都必须先用new实例化一下,有的时候要new好多次,太麻烦了,spring对这方面做了改进,用配置文件来管理实例。
【AOP】
允许通过分离应用的业务逻辑与系统级服务进行内聚性的开发。应用对象只实现它们应该做的,完成业务逻辑,不负责其它的系统级关注点,例如日志或事务支持。
【容器】
用于包含并管理应用对象的配置和生命周期
【框架】
可以将简单的组件配置、组合成为复杂的应用
【MVC】
spring是实现MVC方式的常见框架之一
*Hibernate |
1.官方解说: Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的ORM框架,hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。 2.小菜解说: ★★【持久化由来】 小菜在一篇文章中看到有人这样介绍Hibernate——Hibernate值译过来是“冬眠”的意思,冬眠冬眠一直都在睡觉,对于人或者小动物来说他的睡眠是持久的。所以呀,Hibernate的一个真正意义就来了,**持久化**(就是把数据保存到可以永久保存东西的存储设备中,如磁盘;另外“持久化”是将程序数据在持久状态和瞬时状态间转换的机制,如JDBC、IO文件也是一种持久化机制)
那么问题来了,为啥JDBC也是一种持久化机制,为啥还要出现Hibernate呢?
依据小菜查的资料来说,出现Hibernate的原因是:以前的持久层开发存在很多冗余,如:各种JDBC语句,connection的管理,所以出现了Hibernate把JDBC封装了一下,这样我们不用操作数据,直接操作它就可以了。
★★【ORM】
ORM(Object Relational Mapping)对象关系映射,是一种解决面向对象与关系数据库存在的互不匹配的现象的技术。也就是它通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中。
*链接小分享 |
Hibernate相关总结