全文预览

软件项目招标文件技术标书

上传者:梦&殇 |  格式:doc  |  页数:36 |  大小:281KB

文档介绍
数据的完整性。而在持久层中, 则依赖于 Hibernate 的对象化映射和数据库交互, 处理 DAO 组件请求的数据,并返回处理结果。采用上述开发模型, 不仅实现了视图、控制器与模型的彻底分离, 而且还实现了业务逻辑层与持久层的分离。这样无论前端如何变化, 模型层只需很少的改动, 并且数据库的变化也不会对前端有所影响, 大大提高了系统的可复用性。而且由于不同层之间耦合度小, 有利于团队成员并行工作,大大提高了开发效率。但是对于当前日益复杂化的 WEB2.0 的开发,却存在不少问题,归纳起来主要有以下的不足: ? DAO 和服务层容易出现职责不明,由于按照 MVC 逻辑,业务代码应该写在 Struts Action 里,但是其事务的提供,却是配置在 Service 层。为了一组在逻辑上完整的数据操作业务逻辑,需要涉及两个层( Service 、 Action )来进行编写,遇到判断的情况下,为了保证完整的事务操作,则需要将业务代码移到 Service 层完成, 而通常习惯了在 Struts Action 里调用多次 Service 而产生多个事务,但在出现 Exception 导致出错时, 操作之前调用的 Service 事务的业务数据没有被回滚。?当需要返回的数据供 AJAX 使用, 操作 JSON 或 XML 的大量使用时。开发起来会很费力,一段同样的业务代码,为了使用 AJAX 和 XML 可能需要重新编写一次,或者在同一个 ACTION 里通过标志来判断,对分层结构造成了比较糟糕的破坏。如果设计得不好,为了使用 JSON 和 XML 还得额外增加大量的配置,严重降低了开发效率。因此, 为了克服这些缺点, 对于 SSH 架构, 进行了重新的分层, 共享了业务代码。简化了开发、增强了与 AJAX 技术、 XML 技术的结合。提供了一种更高效的开发模式。其开发的结构图如下:

收藏

分享

举报
下载此文档