java 应用分层_Java应用分层架构及软件模型

一、应用程序的分层体系结构

表述层、业务逻辑层、数据库层、

1.1.1区分物理层和逻辑层

物理分层:每一层运行在网络上的单独的机器节点上。分布式软件系统。

逻辑分层:每一层由相对的软件模块来实现,完成特定功能。

1.1.2软件层的特征

每一层由一组相关类或组件构成,共同完成特定的功能层与层之间存在自上而下的依赖关系,上层组件访问下层组件的API,下层不应该依赖上层。即解耦。每一层对上层公开API

1.1.3Java应用的持久层

为了把数据访问细节和业务逻辑分开,可以把数据访问作为单独的持久化层。

持久化层利用ORM软件,例如:Hibernate作为中间组件

(中间组件:应用程序和其他软件系统之间的连接管道,Hibernate可以看成Java应用与关系数据库的管道)

那持久化层封装了数据访问细节,有什么好处呢?

代码重用性高能够支持多种数据库平台相对独立,改变不会影响上层的实现

二、软件模型

1、概念模型

用来模拟问题域中的真实实体(建模),描述 每个实体的概念和属性,以及实体之间的关系。

2、关系数据模型

基于概念模型,用于描述关系数据的静态结构

内容组成:(表的组件不要包含业务意义)

一个或多个表表的所有索引视图触发器表与表之间的参照完整性

3、域模型

在概念模型基础上创建,域模型面向对象。

组成:

具有行为和状态的域对象

域对象之间的关系

4、域对象(Domain Object)

对真实世界的实体的软件抽象。

实体域对象:POJO(需要持久化)

过程域对象:代表业务逻辑或流程。如:客户发出订单、登入应用等作为过程域对象

事件域对象:代表应用的一些事件(异常、警告、超时等)

5、域对象之间的关系

1.关联:指类之间的引用关系。(有点类似Spring中的DI)

2.依赖

3.聚集:类似关联

4.一般化:类之间的继承

6、域对象的持久化概念

在内存中表现为实体域对象,及域对象之间的各种关系关系数据库中表现为表,及表与表之间的参照关系

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值