`

学习笔记_Spring的资源与业务代码分离方式

阅读更多

 

nicolas  111008

 

一、介绍

Spring通过参数化资源和模板方法将资源与业务代码分离,利用这种方式可以对资源进行统一管理。

 

二、主要操作

1)抽取业务代码共性,业务代码直接使用资源。

2)通用代码维护资源,调用业务共性方法。

3)编写具体业务代码负责资源操作相关的各种具体业务,封装后,调用者可摆脱资源维护代码。

 

三、示例

 

代码剪切自Spring

 

 

1. 建立资源操作接口

 

抽取业务共性

 

 

public interface ClientCallback {
 
    Object doInClient(Executor executor) throws SQLException;
 
}
   

2. 封装资源获取和释放

 

维护资源,只和共性业务有关。

 

    public Object execute(ClientCallback action) throws DataAccessException {
 
       Executor session = this.sqlMapClient.openSession();
 
       try {
           return action.doInClient(session);
       }
       catch (SQLException ex) {
           throw ExceptionTranslator().translate("Operation", ex);
       }
 
       if (session != null) {
           session.close();
       }
    }

 

 

3. 具体业务代码

 

通过参数化资源,不再承担资源的维护责任。进一步封装后,调用者完全和资源无关。

 

    public Object queryForObject(String statementName, Object parameterObject)
           throws DataAccessException {
 
       return execute(new ClientCallback() {
           public Object doInClient(Executor executor) throws SQLException {
              return executor.queryForObject(statementName, parameterObject);
           }
       });
    }
  

 

此处的真正具体业务代码为executor.queryForObject

 

 

分享到:
评论

相关推荐

    Spring框架学习笔记

    Spring框架是Java开发中广泛应用的轻量级...这份"Spring框架学习笔记"会深入探讨以上各个知识点,通过PDF文档的形式,提供详细的讲解和实例,对于想要深入了解和学习Spring框架的人来说,无疑是一份实用的学习资源。

    马士兵老师spring框架学习笔记

    马士兵老师是知名的Java教育专家,他的Spring框架学习笔记深入浅出,对于初学者和进阶者来说都是一份宝贵的资源。这份笔记涵盖了Spring的核心概念、配置、AOP(面向切面编程)、DI(依赖注入)等关键知识点。 1. **...

    spring指南学习笔记

    标题和描述均提到了“spring指南学习笔记”,这意味着文档聚焦于Spring框架的学习心得与关键概念。Spring是一个开源的Java企业级应用框架,以其强大的依赖注入(Dependency Injection, DI)和面向切面编程(Aspect ...

    Spring学习笔记.doc

    ### Spring学习笔记知识点详解 #### 一、Spring框架概述 **1.1 什么是Spring** Spring框架是一个开源的轻量级应用框架,主要用于简化企业级应用程序的开发过程。它的核心特性在于提供了一种灵活的方式来组织和...

    Spring学习笔记(内含代码)

    这个“Spring学习笔记(内含代码)”包含了作者在深入研究Spring框架过程中所做的详细记录,旨在帮助初学者和有经验的开发者更好地理解和应用Spring。 Spring框架的核心特性包括依赖注入(Dependency Injection,DI...

    Spring学习笔记.zip

    这个“Spring学习笔记.zip”文件很可能包含了关于Spring框架的学习资源,特别是“Spring学习笔记.xmind”文件,可能是以思维导图的形式总结了Spring的核心概念和技术。 首先,Spring框架的基础是IoC(Inversion of ...

    itheima_spring_jdbc.rar

    它采用了模型-视图-控制器(Model-View-Controller,MVC)架构模式,使得业务逻辑、数据展示和用户交互分离。请求由DispatcherServlet接收,通过HandlerMapping找到对应的Controller处理,然后Controller调用Service...

    Spring学习笔记.rar

    这份"Spring学习笔记"涵盖了Spring框架的基础到高级应用,对于想要深入理解并掌握Spring的开发者来说是一份宝贵的资料。 1. **Spring概述**:Spring是一个开源的Java平台,主要设计用于简化企业级应用开发。它提供...

    马士兵Spring课堂笔记(超级详细版).pdf

    AOP可以帮助我们将通用的逻辑代码,例如日志记录、安全检查、事务管理等,和业务逻辑代码分离,以提高代码的可维护性和灵活性。 Spring应用IOC/DI Spring提供了强大的IOC/DI容器,可以帮助我们实现对象之间的解耦...

    Struts、Spring、Hibernate&Ajax;学习笔记总结

    ### Struts、Spring、Hibernate&Ajax 学习笔记总结 #### Struts 部分 **Struts** 是 Java 开源框架中最早出现且最具影响力的框架之一,它出自 Apache 组织,是 Java Web 应用开发的标准之一。Struts 以 MVC(Model...

    狂神Spring5视频MD笔记+源码.7z

    而"Spring学习笔记.md"和"Spring学习目录.md"则可能是作者观看视频后的学习记录,其中可能包含了对Spring关键概念、API使用方法的详细解释和示例,是学习Spring的宝贵资源。 "img"文件夹可能包含了一些图表或示意图...

    Spring学习笔记 包括SSH的整合

    总之,Spring学习笔记对于理解SSH整合的全过程及其背后的设计原则非常有帮助,对于希望深入学习Java Web开发的开发者来说是一份宝贵的资源。通过实践和阅读这样的笔记,开发者可以更好地掌握这三大框架的使用,提升...

    Spring3 MVC 学习笔记 入门

    ### Spring3 MVC 学习笔记入门知识点解析 #### 一、Spring MVC 概念与架构 **Spring MVC** 是 Spring Framework 的一个重要模块,主要用于构建基于 Web 的应用。它实现了 Model-View-Controller(MVC)设计模式,...

    Spring&Mybatis&SpringMVC总结笔记-最全最基础.pdf

    本总结笔记是Spring、Mybatis、SpringMVC的综合学习资源,涵盖了这些框架的基本概念、配置方式、优点与适用场景,以及它们各自组件和功能点的详细解释。适用于初学者入门学习,同时也可以作为面试时的参考资料,帮助...

    spring学习笔记

    其次,AOP是Spring的另一个关键特性,它允许开发者定义横切关注点,如日志、事务管理等,然后将这些关注点与业务逻辑分离,实现代码的模块化。在Spring中,切面可以通过定义通知(advises)和切入点(pointcuts)来...

    Spring.NET学习笔记 - 刘冬.NET - 博客园

    这个压缩包包含了一系列刘冬.NET在博客园上发布的Spring.NET学习笔记,帮助读者深入理解这个强大的框架。 1. **控制反转(IoC)**: 控制反转是Spring.NET的核心概念之一,它将对象的创建和管理权交给了框架,而...

    SpringAop学习笔记以及实现Demo

    **Spring AOP 学习笔记及实现Demo** Spring AOP(Aspect Oriented Programming,面向切面编程)是Spring框架中的一个重要组成部分,它提供了一种在不修改源代码的情况下,对程序进行功能增强的技术。AOP的主要目的...

Global site tag (gtag.js) - Google Analytics