8 -- 深入使用Spring -- 8...1 Spring提供的DAO支持
8.8.1 Spring提供的DAO支持。
DAO模式是一种标准的Java EE设计模式,DAO模式的核心思想是,所有的数据库访问都通过DAO组件完成,DAO组件封装了数据库的增、删、查、改等原子操作。业务逻辑组件依赖于DAO组件提供的数据库原子操作,完成系统业务逻辑的实现。
对于Java EE应用的架构,有非常多的选择,但不管细节如何变换,Java EE应用都大致可分为如下三层。
⊙ 表现层。
⊙ 业务逻辑层。
⊙ 数据持久层。
轻量级Java EE架构以Spring IoC容器为核心,承上启下:向上管理来自表现层的Action,向下管理业务逻辑层组件,同时负责管理业务逻辑层所需的DAO对象。
DAO组件是整个Java EE应用的持久层访问的重要组件,每个Java EE应用的底层实现都难以离开DAO组件的支持。Spring对实现DAO组件提供了许多工具类,系统的DAO组件可通过继承这些工具类完成,从而可以更加简便地实现DAO组件。
Spring 提供了一系列抽象类,这些抽象类将被作为应用中DAO实现类的父类。通过继承这些抽象类,Spring简化了DAO的开发步骤,能以一致的方式使用数据访问技术。不管底层采用JDBC、JDO还是Hibernate,应用中都可采用一致的编程模型。
DAO 组件继承这些抽象基类会大大简化应用的开发。不仅如此,继承这些抽象基类的DAO能以一直的方式访问数据库,这意味这应用程序可以在不同的持久层访问技术中切换。
除此之外,Spring提供了一直的异常抽象,将原有的checked异常转换包装成Runtiong异常,因而,编码时无须捕获各种技术中特定的异常。Spring DAO体系中的异常,都继承DataAccessException,而DataAccessException异常是Runtime的,无须显式捕捉。通过DataAccessException的子类包装原始异常信息,从而保证应用程序依然可以捕捉到原始异常信息。
啦啦啦
相关文章
- JavaWeb_(Spring框架)Spring中IoC与DI概念入门
- Spring基础-11-事务细节
- Spring -- 三种配置方式
- spring入门程序编写
- Aliyun Java Initializr 和 Spring 官方的到底有什么区别?
- Spring中使用RedisTemplate操作Redis(spring-data-redis)
- Spring--入门
- spring boot容器启动详解--转
- [Spring学习笔记 3 ] spring 注解详解,完全注解,常用注解
- Spring Cloud -- Ribbon负载均衡
- Spring--入门
- [Java Sprint] Spring Configuration Using Java
- spring boot:actuator的安全配置:使用spring security做ip地址限制(spring boot 2.3.2)
- Spring MVC--使用Jackson返回JSON格式数据
- spring cloud组件服务架构
- spring 定时任务
- spring boot热部署 -- 实现 后端java热更新 -- 详细操作 【idea 的 JRebel破解】
- Spring Boot 自定义配置key @ConfigurationProperties(prefix = "db.clickhouse")
- Spring的DataSource配置、将Hibernate配置所有写到Spring配置
- 001-Spring Cloud Edgware.SR3 升级最新 Finchley.SR1,spring boot 1.5.9.RELEASE 升级2.0.4.RELEASE注意问题点
- MyBatis系列教程(六)-- 与Spring综合(Integrate with Spring)
- 问题解决之-Spring Data开发手册|手摸手教你简化持久层开发工作
- 【Spring源码学习】spring IOC容器管理
- 【java】Spring Cloud --Feign Client超时时间配置以及单独给某接口设置超时时间方法