南通有哪些网站,外贸英文网站制作,广东省网络推广公司,做那种事免费网站文章目录 1. 五种数据访问模式1.1 在线访问1.2 DAO1.3 DTO1.4 离线数据模式1.5 对象/关系映射 (O/R Mapping) 2. 工厂方法模式在数据访问层应用3 ORM、Hibernate与CMP2.0设计思想3.1 ORM3.2 Hibernate1#xff09;概述2#xff09; Hibernate的架构#xff08;2023年的考题概述2 Hibernate的架构2023年的考题3特点 4. XML Schema的灵活运用4.1 XML Schema4.2 Schema组件4.3 XML Schema规范1Primer入门书/指南2Structures结构3Datatypes数据类型 5. 事务处理设计5.1 概述5.2 ACID原则1原子性(Atomicity)2一致性(Consistency)3隔离性 (Isolation)4持久性 (Durability) 5.3 J2EE对事务的处理1JDBC事务2JTA事务 6. 连接对象管理设计 1. 五种数据访问模式
1.1 在线访问
占用一个数据库连接与数据库交互
1.2 DAO
概念 Data Access Object是标准 J2EE 设计模式之一教材中原话但这种说法并不对如果考还是按教材来 上一篇笔记《中间层设计》 中我们提到过业务逻辑组件以它为基础 作用 用于抽象和封装所有访问数据库的请求将底层的数据访问逻辑与业务逻辑分离从而实现低耦合和高内聚 DAO的常见组件 一个DAO工厂类一个DAO接口一个实现了DAO接口的具体类 包含访问特定数据源的数据的逻辑 数据传输对象
1.3 DTO 概念 Data Transfer Object用于在不同应用层或系统之间传输数据的对象可以看做一个“数据容器”或者“数据包装器”本身应该不包含具体的业务逻辑通常只包含内部一致性检查和基本验证的方法且不调用其他方法 两种设计方法 使用编程语言内置的集合对象通过创建自定义类来实现DTO 对象 两种设计方法的融合技术 代码生成技术 该技术可以生成脱离现有元数据的自定义的DTO类的源代码 提供更强大的集合 如微软 ADO.NET 中的DataSet
1.4 离线数据模式
概念 从数据源获取数据后安装预定结构存放在系统中 其预定结构如 ADO.NET 中的关系结构、SDO 中的Data图表结构 特点 对数据的操作独不依赖与数据源的连接可以脱离数据源来定义各异的数据存放结构和规则可以方便地与XML格式的文档之间互相转换
1.5 对象/关系映射 (O/R Mapping)
概念 Object/Relation Mapping将应用程序中的数据转换成关系型数据库中的记录将关系数据库中的记录转换成应用程序中的对象
2. 工厂方法模式在数据访问层应用
工厂方法模式 定义产品对象的创建接口但由子类实现具体产品对象的创建。也可以表述为使一个类的实例化延迟到其子类 关于工厂方法模式可以翻我的专栏《golang与设计模式》中《创建型模式-04-工厂方法模式Factory Method》一章 在数据访问层的应用 首先定义一个操纵数据库的接口然后根据数据库的不同由类工厂决定实例化哪个类。
3 ORM、Hibernate与CMP2.0设计思想
3.1 ORM
概念 Object-Relation Mapping在关系型数据库和对象之间作一个映射操作数据库时只需操作这些对象而不需要使用SQL 优点 降低学习成本减少代码量提高开发效率降低错误增强安全性
3.2 Hibernate
1概述
概念 是一个开源的对象关系映射框架它对 JDBC 进行了轻量级的对象封装 作用 提供从 Java类到数据表之间的映射提供数据查询和恢复机制 优点 减少操作数据库的工作量 另外教材中提到的一个知识点 Hibernate 利用代理模式来简化载入类的过程这将大大减少利用 Hibernate QL 从数据库提取数据的代码的编写量。想了解代理模式同样可以看我的设计模式专栏这里不赘述 2 Hibernate的架构2023年的考题 3特点
灵活性性 提供多种运行方式 轻型体系中应用程序提供JDBC 连接并且自行管理事务这种方式使用了Hibernate的一个最小子集在全面解决体系中对于应用程序来说所有底层的JDBC/JTA API 都被抽象了Hibernate会照管所有的细节。 功能强大
4. XML Schema的灵活运用
4.1 XML Schema
概念 是一种XML语言用于描述和约束XML文档的结构和内容模式它是DTD的替代者但功能更强大和完善其自身使用XML 1.0的语法和规则进行描述和定义使用了命名空间来避免元素和属性名称的冲突 DTD的概念 文档类型定义Document Type Definition基于XML XML Schema是Schema组件的集合下边介绍Schema组件
4.2 Schema组件
概述 详细说明了抽象数据模型的每个组件的严格语义
XML Schema是 Schema组件的集合这些组件分为三组
基本组件 包括简单类型定义、复杂类型定义、属性声明、元素声明 组件 包括属性组、完整性约束定义、模型组、符号声明 帮助组件 包括注释、模型组、小品词、通配符和属性使用
4.3 XML Schema规范
1Primer入门书/指南
概念 一个非标准化的文档提供了XML Schema 的简单可读的描述 目的快速地理解如何利用 XMLSchema语言创建一个Schema
2Structures结构
概述 XML Schema中用于定义XML文档结构的元素和规则 它包括如何定义XML文档中的元素、元素的顺序、元素的嵌套关系、元素的出现次数等 3Datatypes数据类型
概述是XML Schema中用于定义XML元素、属性的数据类型的机制特点 提供了丰富的数据类型 如string、integer、Boolean、time 和 date等并且提供了定义新类型的能力 实现了继承和复用与命名空间紧密联系易于使用
5. 事务处理设计
5.1 概述
事务的概念一组处理步骤要么全部发生要么一步也不执行事务的提交当所有步骤被完整地执行我们称该事务被提交
5.2 ACID原则
1原子性(Atomicity)
事务执行过程中的任何失败都将导致事务所做的任何修改失效
2一致性(Consistency)
当事务执行失败时所有被该事务影响的数据都应该恢复到事务执行前的状态
3隔离性 (Isolation)
事务执行过程中对数据的修改在事务提交之前对其他事务不可见
4持久性 (Durability)
持久性表示已提交的数据在事务执行失败时数据的状态都应该正确。
5.3 J2EE对事务的处理 J2EE 应用服务器支持JDBC 事务、JTA(Java Transaction API) 事务和容器管理事务。一般情况下最好不要在程序中同时使用上述三种事务类型例如在JTA 事务中嵌套JDBC事务。另外事务要在尽可能短的时间内完成不要在不同方法中实现事务的使用。下面举例说明两种事务处理方式。 1JDBC事务
JavaBean 中使用 JDBC方式进行事务处理原理 默认是auto-commit模式每个SQL语句都被当作一个事务屏蔽auto-commit后调用commit()方法提交事务
2JTA事务
SessionBean 中使用JTA事务概念 Java Transaction API它是描述事务接口的是J2EE 模型的一部分 JTA的三个主要的接口 User Transaction接口Transaction Manager接口Transaction接口 原理 调用UserTransaction.begin() 方法开始一个事务UserTransaction.commit()方法终止与当前线程关联的事务UserTransaction.rollback()方法回滚
6. 连接对象管理设计
资源池 意义解决资源频繁分配、释放所造成的问题 过程 创建静态连接池根据初始化配置将连接放入连接池客户请求时 若连接池中有空闲连接则分配给用户若连接池中没有空闲连接则选择适合的已分配出去的连接给客户端复用 当客户端释放连接时根据是否被复用决定是否放回连接池