J2EE分层设计是Java企业应用的最基本的设计思想。
2009-09-24 11:03
253 查看
从最常规的分层结构来说,系统层次从上到下依次为:
表现层:主要是客户端的展示。
服务层:直接为客户端提供的服务或功能。也是系统所能对外提供的功能。
领域层:系统内的领域活动。
DAO层:数据访问对象,通过领域实体对象来操作数据库。
其中有些指导原则:
1、上层总是依赖其下层,依赖关系不跨层。
2、表现成除外,同一层之间方法不允许相互调用。这是实际开发中一些开发者容易范的错误!如果真是同一层之间存在方法调用,需要注意,这些调用都是一些上层不可见方法,比如一些工具方法等。
3、一切从服务层出发,从系统需要提供的功能进行分析,确定Service接口中的方法。而不是从数据库的表出发,创建DAO,再创Domain,然后Service,这实际上是对系统分层的误解。
4、系统最核心的设计就是将系统中的实体划分为领域模型。在此基础上设计数据的DAO层,并将这些活动暴露给服务层,服务层的实现依赖于领域活动。
5、每个接口的职责范围明确有界。
文件名称:
Action(表现层)
Domain(领域层)
Service(服务层)
Persistence(持久层,也就是DAO层)
Util(存一些常用的工具类)
表现层:主要是客户端的展示。
服务层:直接为客户端提供的服务或功能。也是系统所能对外提供的功能。
领域层:系统内的领域活动。
DAO层:数据访问对象,通过领域实体对象来操作数据库。
其中有些指导原则:
1、上层总是依赖其下层,依赖关系不跨层。
2、表现成除外,同一层之间方法不允许相互调用。这是实际开发中一些开发者容易范的错误!如果真是同一层之间存在方法调用,需要注意,这些调用都是一些上层不可见方法,比如一些工具方法等。
3、一切从服务层出发,从系统需要提供的功能进行分析,确定Service接口中的方法。而不是从数据库的表出发,创建DAO,再创Domain,然后Service,这实际上是对系统分层的误解。
4、系统最核心的设计就是将系统中的实体划分为领域模型。在此基础上设计数据的DAO层,并将这些活动暴露给服务层,服务层的实现依赖于领域活动。
5、每个接口的职责范围明确有界。
文件名称:
Action(表现层)
Domain(领域层)
Service(服务层)
Persistence(持久层,也就是DAO层)
Util(存一些常用的工具类)
相关文章推荐
- java中单例设计模式,基本思想和目的。
- 企业应用的分层设计理念
- 若干条J2EE应用中运用“配置”的最佳实践 - 企业应用 - Java - JavaEye论坛
- 对J2EE应用系统分层设计的思考
- 轻量级Java_EE企业应用实战-第5章Hibernate的基本用法-001
- 对J2EE应用系统分层设计的思考
- 巧用zookeeper实现分布式并行计算 - J2EE企业应用 顾问/咨询 Java传教士 -H.E.'s Blog
- DotNET企业架构应用实践-实例架构设计中的业务分层-提取独立的业务层
- spring,springMVC的优点和区别 spring 是是一个开源框架,是为了解决企业应用程序开发,功能如下 ◆目的:解决企业应用开发的复杂性 ◆功能:使用基本的JavaBean代替EJB,并
- 学习java(一:从Java设计思想看基本数据类型与类型转换)
- Java EE是 J2EE的一个新的名称,之所以改名,目的还是让大家清楚J2EE只是Java企业应用.随着WEB和EJB容器概念诞生,使得软件应用业开始担心SUN的伙伴们是否还在Java平台上不断推出
- Java和J2EE 的企业应用:崎岖的蜜月之路
- JAVA进阶之旅(一)——增强for循环,基本数据类型的自动拆箱与装箱,享元设计模式,枚举的概述,枚举的应用,枚举的构造方法,枚举的抽象方法
- Java中级----多线程同步基本思想,java多线程设计wait、notify、notifyall、synchronized的使用机制(转)
- JAVA进阶之旅(一)——增强for循环,基本数据类型的自动拆箱与装箱,享元设计模式,枚举的概述,枚举的应用,枚举的构造方法,枚举的抽象方法
- 对J2EE应用系统分层设计的思考
- 对J2EE应用系统分层设计的思考
- 对J2EE应用系统分层设计的思考
- DotNET企业架构应用实践-实例架构设计中的业务分层-提取独立的业务层
- 企业应用的分层设计理念