`
DepthJava
  • 浏览: 21400 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

WEB项目的分层结构(转)

    博客分类:
  • JAVA
阅读更多
  大部分的WEB应用在职责上至少被分成四层:表示层、持久层、业务层和域模块层。

一、             表示层

一般来讲,一个典型的WEB应用的前端应该是表示层,可以使用Struts框架。

下面是Struts所负责的:

1、  管理用户的请求,做出相应的响应。

2、  提供一个流程控制,委派调用业务逻辑和其他上层处理。

3、  处理异常。

4、  为显示提供一个数据模型(即把数据对象设置到某一个范围内,用于前台获取数据)。

5、  用户界面的验证。

以下内容,不该在Struts表示层的编码中经常出现,它们与表示层无关的。

1、  与数据库直接通信。

2、  与应用程序相关联的业务逻辑有校验

3、  事务处理。

二、             持久层

典型的WEB应用的后端是持久层。可以用Hibernate实现。Hibernate的持久对象是基于POJO(Plain Old Java Object)和Java集合的。

下面是Hibernate所负责的内容:

1、  如何查询对象的相关信息。

Hibernate是通过一个面向对象查询语言(HQL)或正则表达的API来完成查询的。HQL非常类似于SQL,只是把SQL里的table和columns用Object和它的fields代替。

2、  如何存储、更新、删除数据库记录。

3、  Hibernate这类高级ORM框架支持大部分主流数据库,并且支持父表/子表关系、事务处理、继承和多态。

三、             业务层

一个典型WEB应用的中间部分是业务层或服务层。可以用Spring来实现。

下面是业务层所负责的:

1、  处理应用程序的业务逻辑和业务校验。

2、  管理事务。

3、  提供与其他层相互作用的接口。

4、  管理业务层级别的对象的依赖。

5、  在表示层和持久层之间增加一个灵活的机制,使得他们不直接联系在一起。

6、  通过揭示从表示层到业务层之间的上下文来得到业务逻辑。

7、  管理程序的执行(从业务层到持久层)。

四、             域模块层

既然我们致力于一个WEB的应用,我们就需要一个对象集合,让它在不同层之间移动。域模块层由实际需求中业务对象组成,比如订单明细、产品、等。开发者在这层不用管哪些数据传输对象,而关注域对象即可。例如,Hibernate允许你将数据库中的信息存入域对象,这样你可以在连接断开的情况下把这些数据显示到用户界面层,而那些对象也可以返回给持久层,从而在数据库里更新。而且,你不必把对象转化成DTO(这可能导致它在不同层之间传输过程中丢失)。这个模型使得Java开发者能很自然运用面向编程,而不需要附加编码。



本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/lsgsunny/archive/2009/04/03/4022831.aspx
分享到:
评论

相关推荐

    c++多模块web项目实践方案-项目分层骨架

    这是博文 【c++多模块web项目实践方案【cmake+cppcms+boost+fmt】】附带的项目源代码骨架。笔者主要提出了自己对于c++项目如何分层,如何做一个简单的网站的见解。具体文章地址在:...

    go web 项目开发脚手架

    ## 项目分层模式 ### MVC - Model:模型代表一个存取数据的对象。它也可以带有逻辑,在数据变化时更新控制器。 - View:视图代表模型包含的数据的可视化。 - Controller:控制器作用于模型和视图上。它控制数据...

    bubble-master_gin+gorm学习项目_已分层.rar

    在"bubble-master_gin+gorm学习项目_已分层.rar"这个压缩包中,我们可以深入学习如何将 Gin 与 Gorm 结合,构建一个分层结构的 Web 应用程序。 1. **Gin 框架基础** - Gin 提供了一个简洁的 API,使得开发者可以...

    web三层结构

    通过学习和分析这些文件,可以深入理解Web三层结构在实际项目中的应用。 总结来说,Web三层结构是一种经典的软件架构模式,它将应用划分为表现层、业务逻辑层和数据访问层,以提高代码的可维护性和可扩展性。理解并...

    javaweb分层架构

    JavaWeb分层架构是开发大型、复杂Web应用的常用模式,它通过将应用程序的不同...虽然文件名列表未给出具体信息,但通常相关的资料可能包含示例代码、项目结构、配置文件等内容,有助于深入理解并实践JavaWeb分层架构。

    Java web项目—网上商城项目

    【Java Web项目—网上商城项目】是一个典型的Java后端技术与Web前端技术相结合的应用实例,主要采用了SSH(Struts2、Hibernate、Spring)三大框架进行开发。SSH框架因其高效、灵活和可扩展性,在企业级应用开发中...

    asp.net分层小项目

    本项目“asp.net分层小项目”是一个典型的使用ASP.NET技术实现的分层架构的图书馆管理系统,旨在展示如何在实际开发中进行结构化和模块化的编程,提高代码的可读性和可维护性。 项目的核心是分层架构,这种设计模式...

    jsp项目(WEB)

    【标题】:“jsp项目(WEB)”是一个基于JavaServer Pages(JSP)技术构建的Web应用程序,它展示了在开发Web项目时使用的技术栈和设计模式。这个项目可能旨在实现一个类似于“酷狗官网”的功能,提供了音乐播放、...

    C# web 三层架构设计

    C# Web 三层架构是一种常见的软件设计模式,旨在通过清晰的分层提高代码的可读性、可维护性和可扩展性。这种架构模式将应用程序分解为三个独立的层次:表示层(Presentation Layer)、业务逻辑层(Business Logic ...

    web设计三层结构图

    这种结构不仅适用于Java Web应用,也广泛应用于其他编程语言的Web项目中。 #### 二、三层结构详解 **1. 表现层(View Layer)** - **定义与作用**:表现层是用户直接交互的部分,主要负责接收用户的输入并展示...

    S2-分层结构-酒店管理系统

    《S2-分层结构-酒店管理系统》是一个全面的教程,涵盖了从设计到实现酒店管理系统的各个关键步骤。系统基于C#编程语言,利用分层架构来组织代码,确保了良好的可读性、可维护性和模块化。在这个系统中,我们主要关注...

    DotNet分层

    本文将深入探讨DotNet分层架构的原理、结构及其在WindowsApp开发中的应用。 首先,我们要理解什么是分层架构。分层架构通常包括以下几个层次: 1. 表示层(Presentation Layer):这是用户与系统交互的界面,负责...

    Web项目解决方案框架

    在构建Web项目解决方案时,框架的设计是至关重要的。本文将深入探讨如何构建一个高效、可扩展的Web项目框架,主要涉及以下几个关键知识点: 1. **页面对象组件ActionForm设计**: ActionForm是Struts框架中的核心...

    小程序项目分层架构.zip

    在这个“小程序项目分层架构.zip”压缩包中,我们关注的是如何构建一个高效、可维护的小程序项目结构。主要涉及到的知识点包括JavaScript编程语言、软件工程中的分层架构设计以及小程序的开发规范。 首先,...

    Java web项目源码 都市供求信息网.zip

    这种分层结构有助于提高代码的可维护性和可扩展性。 此外,项目可能还涉及其他技术,如JSTL(JavaServer Pages Standard Tag Library)用于简化JSP页面的编写,或者Spring框架来管理依赖注入和事务处理,提升项目...

    express 项目分层实践详解

    在开发Web应用时,合理地组织项目结构是提高代码可维护性和可扩展性的重要手段。Express,作为Node.js中流行的Web应用框架,同样可以采用分层架构来优化项目。本篇文章将详细介绍如何在Express项目中进行分层实践,...

    WebAPI-Demo项目

    【描述】提到,这个项目具有良好的结构分层,这通常意味着它遵循了软件开发中的分层架构模式,包括表现层(Presentation Layer)、业务逻辑层(Business Logic Layer)和数据访问层(Data Access Layer)。这种结构...

    jpwms.zip(分层项目,主项目下面有子项目)|jpwms.zip

    标题中的"jpwms.zip"是一个压缩包文件,它包含了一个分层结构的项目,意味着这个项目被组织成了多个层次,通常这样的结构有利于代码的模块化和管理。"主项目下面有子项目"的设计模式常见于大型软件开发中,允许不同...

    基于.NetCore开发WebApi,WebApi框架

    基于.NetCore3.1搭建webapi框架。涉及知识有: 1.swagger API接口文档生成 2.多层(包含接口调用方式)高性能数据处理结构 3.数据仓储模式的实现 4.JWT token身份授权验证 5.appsetting.json文件集成读取配置

    .net层次结构项目

    在.NET框架中,层次结构项目通常指的是具有清晰模块划分、职责分明的软件开发结构。这种结构将复杂的系统分解为多个层级,每个层级专注于特定的功能,从而实现代码的可读性、可维护性和可扩展性。以下是对".NET层次...

Global site tag (gtag.js) - Google Analytics