搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
IT小白
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
IBM原厂资深专家:DB2优化器和成本模型分析_性能模型成本
2
MySQL卸载不干净回不到初始安装页面(MySQL Connector Net卸载不了),重装报错Database initialization failed等问题解决办法_mysql connector net无法卸载
3
【论文阅读】Swin Transformer Embedding UNet用于遥感图像语义分割_swin transformer embedding unet for remote sensing
4
C++——实现一个简单的unordered_map_c++unorderedmap实现
5
微信小程序中调取小程序实现报错:提示 开发版小程序已过期,请在开发者工具中重新扫码的 解决方案
6
gdb简单使用教程_gdb使用教程
7
Ollama:打造本地开源大模型聊天应用的实践_ollama 部署 模型 会形成服务接口吗
8
8051的存储结构组成--程序存储空间、数据存储卡空间、特殊功能寄存器、位地址空间_auxr寄存器
9
常见面试题之设计模式--工厂方法模式_工厂模式面试题
10
Apache SeaTunnel社区成功入选开源之夏活动,现开启导师招募!
当前位置:
article
> 正文
数据层
作者:IT小白 | 2024-04-10 20:46:55
赞
踩
数据层
数据层:一般是sql db等
数据持久层是什么,数据持久层做什么,什么时候需要数据持久层
我们通常讲的三层结构经典划分为:
表示层(Presentation)
业务逻辑层(Business Logic)
基础架构层(Infrastructure)
在实际的项目开发法中,开发者通常对三层结构进行扩展来满足一些项目的具体要求,一个最常用的扩展就是将三层体系扩展为五层体系
表示层(Presentation)
控制/中介层(Controller/Mediator)
领域层(Domain)
数据持久层(Data Persistence)
数据源层(Data Source)
它其实是在三层架构中增加了两个中间层。
控制/中介层位于表示层和领域层之间,
数据持久层位于领域层和基础架构层之间。
由于对象范例和数据关系范例这两大领域之间存在“阻抗不匹配”,
而数据持久层便是在“表格型的关系型数据库与树型的程序对象”之间提供一个映射解决方案
换句话说,持久化是一个将信息写入外部数据源的一个过程
Java开发中三种持久层主流解决方案
1、JDBC
许多开发者用JDBC进行数据库程序的开发。此中方式很多情况下都使用DAO(data access object )模式,采用SQL进行查询。虽然用此方式可以使应用程序代码与具体的数据库厂商和数据库位置无关,不过JDBC是低级别的数据库访问方式,JDBC并不支持面向对象的数据库表示。JDBC数据库表示完全围绕关系数据库模型。在大型应用程序的DAO中书写这样的代码,维护量是非常大的。
2、EJB
在J2EE的规范中,为EJB定义了两种持久化的解决方案:
一种是BMP(Bean自身治理的持久化)
另一种是CMP(容器治理的持久化)
其中CMP不需要将SQL语句加入到代码中。目前,在采用J2EE的应用中,EJB CMP方式得到了广泛应用。更加引人注意的是,随着EJB规范的发展,CMP也包含了一些高级关系的内容。但是,CMP的使用比较复杂,对很多开发人员来说比较难以掌握。而且,不是在所有的情况下都适合在系统中采用EJB,而且想要非常清楚的了解EJB规范也是非常费时的。在用EJB编码前,先要让专家理解API,然后需要了解每一个容器部署时所要关注的技术。此外,许多情况下商用容器的性能和支持也不是很好。
3、JDO
JDO是一个存储java对象的规范,JDO规范1.0的提出可以使你将精力集中在设计Java对象模型,然后在企业应用软件架构的不同层面中存储传统的Java对象(Plain Old Java Objects,简称POJOs),采用JDOQL语言进行SQL操作。一些公司(包括sun)企图根据JDO规范进行设计并实现JDO产品,然而他们都不能很好的进行实现,并且性能优化上比较差。
持久就是对数据的保持,即对程序状态的保持。通常通过数据库实现持久层是把数据库实现这块当作一个独立逻辑拿出来。
说白了,就是数据库程序是在内存中的,为了使程序运行结束后状态得以保存,就要保存到数据库使用ORM(对象关系数据库映射)技术可以避免代码直接操作数据库,增加可移植性,可扩展性,可维护性。
持久层
其目的是通过持久层的框架将数据库存储从服务层中分离出来是,持久层框架有两种方向:直接自己编写JDBC等SQL语句(如iBatis);使用O/R Mapping技术实现的Hibernate和JDO技术;当然还有EJB中的实体Bean技术
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/IT小白/article/detail/400890
推荐阅读
article
数据结构
—
—
栈
(
C语言
版)...
数据结构
—
—
栈
超详细讲解
数据结构
—
—
栈
(
C语言
版) 前言: 在学习完
数据结构
顺序表和链表之后,...
赞
踩
article
数据结构
——
栈
(
C语言
)...
数据结构
——
栈
(
C语言
)
数据结构
——
栈
(
C语言
) 需求:无
栈
的概念:
栈
:一种特殊的线性表,...
赞
踩
article
数据结构
——
栈
(C
语言
实现
)_
栈
c
语言
实现
...
本篇文章
实现
的是动态增长的数组
栈
,相信掌握了这一种经典的结构后,其他的结构的
实现
对你来说也是小菜一碟。话不多说直接上菜!...
赞
踩
article
Android
Studio
使用
JDBC
远程连接
mysql
的注意事项(附示例)_
eclipse
my...
JDBC
为java程序访问各种类型的关系型数据库提供了统一的接口,用户不必针对不同数据库写出不同的代码,但是使用
JDBC
...
赞
踩
article
android
通过
jdbc
访问
mysql
数据库
--(含
android
studio
配置)通过测试...
一、
android
studio
version 3.1.2安装配置下载
android
studio
安装,对于andro...
赞
踩
article
数据结构
—
红黑树
...
一文详解
红黑树
数据结构
—
红黑树
红黑树
介绍
红黑树
(Red Black Tree)是一种自平衡二...
赞
踩
article
数据结构
第五章
(
树
和
二叉
树
)
【上】...
(
1
)
树
是n
(
n≥0
)
个结点的有限集,它或为空
树
(
n=0
)
,或为非空
树
。对于非空
树
T,有且仅有一个称之为根的结点
(
一棵
树
...
赞
踩
article
数据结构
——
队列
(包括
循环
队列
)——
Java
版...
队列
(Queue)是一种常见的
数据结构
,它按照先进先出(FIFO,First-In-First-Out)的原则管理数据。...
赞
踩
article
ShardingSphere
-
JDBC
5.1.1
分库
分表
_
shardingsphere
配置
分库
...
它使用客户端直连数据库,以jar包形式提供服务,无需额外部署和依赖,可理解为增强版的
JDBC
驱动,完全兼容
JDBC
和各种...
赞
踩
article
sharding
jdbc
5
.x 实现 自定义
分片
策略
(分库和分表)_
shardingsphere
-...
在ShardingJdbc
5
.x版本中,使用SPI方式进行
分片
策略
的注入,可以根据应用的需要,自定义分库分表
策略
。_s...
赞
踩
article
【
数据结构
】
二叉树
OJ
题
(
C语言
实现)...
二叉树
经典
OJ
题
详细
题
解。【
数据结构
】
二叉树
OJ
题
(
C语言
实现) ...
赞
踩
article
【
数据结构
】J
a
v
a
实现
顺序
表
_
j
a
v
a
构造一个
存储空间
的
顺序
表
,将字符
a
~s存入
顺序
表
...
介绍
顺序
表
,使用J
a
v
a
语言简单模拟实现
顺序
表
_
j
a
v
a
构造一个
存储空间
的
顺序
表
,将字符
a
~s存入
顺序
表
j
a
v
a
构造...
赞
踩
article
【
Java
数据结构
】
顺序
表
_
数据结构
java
顺序
表
基本
算法测试...
本期主要讲解:1、什么是
顺序
表
?2、模拟实现ArrayList2.1 模拟实现前的约定2.2构造方法2.3 add方法2...
赞
踩
article
数据结构
(
顺序
表)...
顺序
表是线性表的一种。线性表(linear list)是n个具有相同特性的数据元素的有限序列。线性表是⼀种在实际中广泛使...
赞
踩
article
[
C语言
][
数据结构
][
动态内存
空间
的
开辟]
顺序
表
的
实现!...
顺序
表
的
从零实现!(附有源码!)[
C语言
][
数据结构
][
动态内存
空间
的
开辟]
顺序
表
的
实现! 目录...
赞
踩
article
数据
结构
——
线性表
(
顺序存储
结构
)...
利用数组实现的
顺序存储
的
线性表
,包含各种操作的具体实现
数据
结构
——
线性表
(
顺序存储
结构
) 语言:...
赞
踩
article
【每日
算法
&&
数据结构
(C++)】—— 07 |
二叉
搜索
树
转
双向
链表
(解题思路、流程图、代码片...
【每日
算法
&&
数据结构
】第七篇之《
二叉
搜索
树
转
双向
链表
》,主要记录了题目描述、题目理解、解题思路、
算法
流程以及
算法
的...
赞
踩
article
【
数据结构
】长篇详解堆,堆的向上/
向下
调整
算法
,
堆排序
及
TopK
问题_
堆排序
向下
调整
为什么
可以
...
堆排序
向下
调整
为什么
可以
文章目录 堆的概念性质图解 向上...
赞
踩
article
【
数据结构
】
建堆
、堆的
向下
调整
及其
复杂度
、堆的向上
调整
及其
复杂度
、
Top
-K问题_堆的
调整
...
概篇博客主要写了堆与完全二叉树的关系,堆的概念和结构,堆的实现:堆的
向下
调整
、堆的创建、
建堆
的时间
复杂度
、堆的插入、堆的...
赞
踩
article
【
数据结构
】
堆
的
实现
(向上、下调整比较
,
复杂度
,
堆
排序
,
Top
-K问题)...
【
数据结构
】
堆
的
实现
(向上、下调整比较
,
复杂度
,
堆
排序
,
Top
-K问题)【
数据结构
】
堆
的
实现
(向上、下调整比较
,
复杂度
,
...
赞
踩
相关标签
数据结构
链表
算法
visual studio
c语言
经验分享
java
开发语言
数据库
服务器
mysql
linux
shardingjdbc
shardingjdbc5.x
二叉树
OJ题
递归