【SSH】网上商城了解

来源:互联网 发布:centos软件安装目录 编辑:程序博客网 时间:2024/05/17 23:54

一、前言:

    首先先来了解一下SSH框架。SHH为struts+spring+hibernate的一个集成框架,是目前较为流行的一种Web应用程序开源框架。Struts进行流程控制,Spring进行业务流转,Hibernate进行数据库操作的封装。

    SSH框架从职责上分为四层:表示层(jsp+action)、业务层(service)、数据持久层(dao)和域模块层(实体层)(vo)。

             


二、基本业务流程是:

    1、在表示层中,首先通过JSP实现交互界面,负责传送请求和接受响应,然后Struts根据配置文件struts.xml将ActionServlet接收到的Request委派给相应的Action处理。

    2、在业务层中,管理服务组件的Spring IoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑,
并提供事务处理、缓冲池等容器组件以提升系统性能和保证数据的完整性。 

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

    采用上述开发模型,不仅实现了视图、控制器与模型的彻底分离,而且还实现了业务逻辑层与持久层的分离。这样无论前端如何变化,模型层只需很少的改动,并且数据库的变化也不会对前端有所影响,大大提高了系统的可复用性。而且由于不同层之间耦合度小,有利于团队成员并行工作,大大提高了开发效率。

    在ssh中,对象的调用流程如下图所示:

    


三、框架结构:

    1、Struts:

    Struts对对MVC(Model、View、Control)都提供了对象的组件。

    ActionServlet这个类是Struts的核心控制器,负责拦截来着用户的请求。

    Action这个类通常由用户提供,该控制器负责接受ActionServlet的请求,并根据该请求调用模型的业务逻辑方法处理请求,并将处理结果返回给JSP页面显示。

    2、Spring:

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

    控制反转:Spring通过一种称作控制反转(IoC)的技术促进了松耦合。当应用了IoC,一个对象依赖的其他对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象,和JNDI正好相反。

    面向切面:Spring提供了面向切面变成的丰富支持,允许通过分离应用的业务逻辑与系统级服务进行内聚性的开发。应用对象只实现他们应该做的-完成业务逻辑-仅此而已。

    3、Hibernate是一个开发源代码的对象关系映射框架,和.NET平台下的EF类似,它对JDBC进行了非常轻量级的对象封装,使用Java程序员可以随心所欲的使用对象变成思维来操纵数据库。

     Hibernate的核心接口一个有5个,分别为:Session、SessionFactory、Transaction、Query和Configuration。这5个核心接口在任何开发中都会用到,通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。

     在网上商城项目中用到了SessionFactory。它是负责初始化Hibernate。它充当数据存储源的代理,并负责创建Session对象。


    

0 0