SSH学习(摘)

Posted 腾飞新星

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SSH学习(摘)相关的知识,希望对你有一定的参考价值。

1.集成ssh框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层、域模块层

 

2.struts作为系统的整体基础架构,负责mvc的分离,在strusts框架的模型部分,控制业务跳转,利用hibernate框架对持久层提供支持。spring一方面作为一个轻量级的Ioc容器,负责查找、定位、创建、管理对象以及对象之间的依赖关系,另一方面能使struts和hibernate更好地工作

 

3.ssh构建系统的基本业务流程:

在表示层中,首先通过jsp页面实现交互界面,负责传送请求request和接收响应response,然后struts根据配置文件struts-config.xml将ActionServlet接收到的request委派给相应的action处理

 

在业务层中,管理服务组建springIoc容器负责想action提供业务模型model组件和该组件的写作对象数据处理DAO组件完成业务逻辑,并提供事务处理、缓冲池等容器组件以提升系统性能和保证数据的完成性

 

在持久层汇总,则依赖于hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果。

 

采用上述开发模型,不仅实现了视图、控制器、模型的彻底分离,而且还实现了业务逻辑层与持久层的分离。

 

4.Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。

 

 

 

 

5. Struts

它通过采用 Java Servlet/JSP 技术,实现了基于Java EEWeb应用的MVC设计模式的应用框架,是MVC经典设计模式中的一个经典产品。

Struts 是MVC的一种实现,它将 Servlet和 JSP 标记(属于 J2EE 规范)用作实现的一部分。Struts继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展,减弱了业务逻辑接口和数据接口之间的耦合,以及让视图层更富于变化

 

 

 

 

6. Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。

 

 

 

Hibernate执行流程

 

 

 

为什么使用Hibernate?

1. 对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。

2、Hibernate是一个优秀的ORM实现。他很大程度的简化DAO层的编码工作,将软件开发人员从大量相同的数据持久层相关编程工作中解放出来,使开发更对象化了。

3、移植性好,支持各种数据库,如果换个数据库只要在配置文件中变换配置就可以了,不用改变hibernate代码。

4、支持透明持久化,因为hibernate操作的是纯粹的(pojo)java类,没有实现任何接口,没有侵入性。所以说它是一个轻量级框架。

 

 

 

Struts 的MVC设计模式可以使我们的逻辑变得很清晰,主要负责表示层的显示。                    

Spring 的IOC和AOP可以使我们的项目在最大限度上解藕。

hibernate的就是实体对象的持久化了, 数据库的封装。

 

表现层中间层(业务逻辑层)和数据服务层。三层体系将业务规则、数据访问及合法性校验等工作放在中间层处理。客户端不直接与数据库交互,而是通过组件与中间层建立连接,再由中间层与数据库交互。

 

表现层是传统的JSP技术。

中间层采用的是流行的Spring+Hibernate,为了将控制层与业务逻辑层分离,又细分为以下几种。

 

Web层,就是MVC模式里面的“C”(controller),负责控制业务逻辑层与表现层的交互,调用业务逻辑层,并将业务数据返回给表现层作组织表现,该系统的MVC框架采用Struts。

 

Service层(就是业务逻辑层),负责实现业务逻辑。业务逻辑层以DAO层为基础,通过对DAO组件的正面模式包装,完成系统所要求的业务逻辑。

 

DAO层,负责与持久化对象交互。该层封装了数据的增、删、查、改的操作。

 

PO,持久化对象。通过实体关系映射工具将关系型数据库的数据映射成对象,很方便地实现以面向对象方式操作数据库。

 

Spring的作用贯穿了整个中间层,将Web层、Service层、DAO层及PO无缝整合,其数据服务层用来存放数据。

 

以上是关于SSH学习(摘)的主要内容,如果未能解决你的问题,请参考以下文章

摘:Selenium api学习

CocosCreator入门之《摘星星》-完全学习记录

深度学习果实即将摘尽?11位大牛谈AI的当下(2018)与未来(2019)

博客收藏-博广文摘

《Cocos Creator游戏实战》摘星星进阶版

ssh服务学习笔记