ssh 是如何实现三层架构的? 每层分别用什么技术实现?

如题所述

ssh 现三层架构,和每层使用的技术如下:
1.Struts应用在表示层,它是基于MVC的WEB应用框架。
Strutts提供了中央控制器(ActionServlet)和应用控制器(Action)。ActionServlet是Struts框架的核心,采用的是前端控制模式;Action则负责完成对服务的调用,对ActionServlet接受并分发下来请求进行处理。可以重写ActionServlet,也可以直接使用,然后继承Action,使其完成我们要求的功能。有了Struts提供的控制器,再运用JSTL标签、Struts标签库中的标签配以JSP或HTML文件,就是Struts中的视图。另外,用于视图与控制器之间表单数据传输的ActionFormBean,也被归于到了视图中。Struts并没有定义模型层的具体实现。一般情况下,Action中所使用的服务是由业务层提供的。Struts中还有不可缺少的配置文件。该配置文件描述了用户请求路径和Action映射关系的信息。ActionServlet通过解析此配置文件得知需把用户的请求发往哪一个Action。
2.Hibernate是一种映射的工具,完全着眼于关系数据库的对象——关系映射,管理对象到数据库的映射,提供数据查询和获取数据的方法。在持久层中,不仅可以使用Hibernate进行映射,还可以使用iBATIS进行SQL语句与对象之间的映射,此外,也可以直接使用JDBC对数据库进行操作。至于使用那一种工具实现持久化,可以根据自己的需求视情况而定。而Hibernate映射是否复杂取决于领域对象的关系是否复杂。
3.Spring贯穿于WEB应用中,它为我们管理对象提供了方便,降低了层与层之间的耦合度,将程序员从繁琐的事务、安全和分布式处理中解放出来,从而把更多的精力放在业务上。如果应用程序才用了Struts+Hibernate的架构,Spring可以帮助整合两者。在创建对象时,可以通过Spring进行注入;对于事务管理,可以通过Spring集成声明式事务管理到到应用程序中等。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-06-29
三层架构是C#的说法。java叫 MVC 。 MVC的实现只需要strust 跟spring 和 hibernate 无关
第2个回答  2012-06-29
struts C 控制器 你请求跳转业务处理不都是struts做的嘛
hibernate m 模型 就是把数据库表变为你能操作的java实体类
html jsp 什么的 V 视图层 跟用户交互的界面
Spring是解耦用的 传统的servlet里 需要我们new service dao等 来操作 N多servlet 若一旦dao 或者service 变掉了 你是不要改N个servlet spring提供了bean工厂 代理了 当然也减少了 new的过程 配置一下 一般spring 三种方式 常用的是 set方式 这也叫 依赖注入 控制反转
当然Spring 3.0以后呢 他本身也是可以做C 跟M用的 但是传统上讲 没spring本回答被网友采纳
相似回答