`
xylong
  • 浏览: 191959 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

一个如何解耦的案例讲解

阅读更多

做具体的业务软件,做泛泛的技术平台,做某个面上的业务平软件,我相信在都有针对各自的项目特性有不同的要求,在这里我分享一下在由具体的业务软件项目向这个面上的一个业务平台的一个转化上有个需要注意的点就是业务扩展性要更好更优,业务代码最好不要浸入平台代码中去,如何有个统筹分类很重要,比如说增删改查,可以分为四种操作,至于用什么手段来解耦,在这里我用的是spring-xml配置文件,在这里贴上伪代码:

 

 

interface BizProcessor{

       //具体业务操作接口
       public void process(BizBO bizBO);

}

 

 

 

public class DeleteProcessor implementes BizProcessor{

public void process(BizBO bizBO){
//具体的业务操作,这里是删除

}

}

 

 

Public InsertProcessor implements BizProcessor{
   public void process(){
       //具体的业务操作,新增操作
    }

}

 

    处理器工厂,提供每个具体的业务操作实例

 

Public class BizProcessorFactory{
     private Map<Integer, BizProcessor> busOperatesMap;

    private ExecutorService pool = Executors.newFixedThreadPool(3);     

     public void doProcess(){

             pool .execute(new BizThread (BizBO));

     }


     //如果平台代码要求快速响应,可以通过线程池异步操作
     class BizThread extends  Thread{
 
           public void run(){
                   BizProcessor processor = busOperatesMap.get(BizType);
                   processor .process();
            }

     }


}
 

   以上伪代码展示了一个基本的解耦过程,只要在平台代码中调用工厂类的doProcess()方法就可以了,可以将具体的操作    转移到具体的业务代码模块中,还是达到了一个解耦的目的。

 

 

分享到:
评论

相关推荐

    9.MATLAB神经网络43个案例分析 PID神经元网络解耦控制算法-多变量系统控制.zip

    在"chapter6"中,很可能是该系列案例的一个章节,可能涵盖了关于PID神经元网络的深入理论介绍、实现步骤、以及一些特定的控制问题案例。这些案例可能会涉及以下知识点: 1. **神经网络基础知识**:包括神经网络的...

    软件设计模式经典案例讲解

    外观类作为一个协调者,隐藏了子系统内部的复杂交互,使客户端只需要与一个对象进行交互,降低了系统的耦合度。这样,即使子系统发生变化,也不会影响到客户端的代码。 代理模式(Proxy Pattern)是创建型设计模式...

    手机天猫解耦之路

    解耦是软件架构设计中一个重要的原则,有助于提升系统的可维护性、可扩展性和灵活性。 3. iOS解耦:从标签信息来看,演讲内容可能涉及iOS平台上的解耦实践。这通常涉及使用模块化设计来减少代码间的依赖,优化应用...

    深入理解JAVA虚拟机实用技巧案例讲解.ppt

    **深入理解JAVA虚拟机实用技巧案例讲解** Java虚拟机(JVM)是Java程序的核心运行环境,它负责解析字节码并执行Java程序。在实际开发中,了解JVM的工作原理和优化技巧对于提高程序性能至关重要。以下是一些关键知识...

    SPRING MVC3.2案例讲解---配置

    **Spring MVC 3.2 案例讲解——配置** Spring MVC 是 Spring 框架的一个模块,专门用于处理Web应用程序的请求-响应模式。在3.2版本中,Spring MVC引入了一些重要的改进和增强,使得开发更加高效和灵活。本篇文章将...

    guochengkongzhi.rar_解耦_过程控制

    在实际工程中,由于生产过程的参数会随时间、环境等因素发生变化,因此,一个有效的解耦控制系统需要能够适应这些变化,保持良好的控制性能。 从压缩包子文件的文件名“过程控制系统_解耦控制系统.ppt”和“过程...

    MATLAB神经网络30个案例分析

    案例可能会介绍如何利用神经网络实现解耦控制,提升系统性能。 6. **前馈神经网络(FFNN)**:最常用的神经网络类型之一,包括输入层、隐藏层和输出层。案例会展示如何构建FFNN,调整层数、节点数,以及反向传播算法...

    多变量输出反馈控制和解耦控制

    通俗易懂,讲解很好,易理解,案例明确,过程清晰,很实用。

    行业分类-设备装置-具有磁解耦的籽晶层的读取器.zip

    标题中的“行业分类-设备装置-具有磁解耦的籽晶层的读取器”表明这是一个关于特定行业设备的技术文档,主要关注的是采用磁解耦技术的籽晶层读取器。磁解耦是一种在电子工程中常见的技术,用于减少磁场干扰,提高设备...

    Xamarin学习笔记&案例

    1. **Mono运行时**:Xamarin基于Mono运行时,这是一个.NET框架的实现,为C#和.NET应用提供了运行环境。它包含了垃圾收集、类型安全和异常处理等特性。 2. **平台特定的API绑定**:Xamarin提供了对Android、iOS和...

    asp.net教案,以案例的形式讲解,更容易理解

    ASP.NET是一种基于微软.NET框架的Web应用程序开发平台,它提供了丰富的功能和工具,使得开发者能够构建动态、...书稿幻灯片中的每个章节都可能是一个具体的案例,逐步引导学习者从零开始搭建一个完整的ASP.NET应用。

    vxworks 程序开发教学案例

    案例会讲解如何使用socket API进行网络连接、数据收发,以及如何配置网络接口。 案例八:文件系统操作 VxWorks支持多种文件系统,如RAM Disk和Flash File System。案例会展示如何挂载、读写文件,以及如何进行文件...

    尚硅谷_佟刚_JavaWEB案例分析

    尚硅谷_佟刚_JavaWEB案例_架构分析.wmv"可能是一个视频教程,详细讲解了案例的整体架构,包括模块划分、技术选型、系统设计原则等,帮助学员理解大型Web项目的组织结构。 8. **PPT教程**: "尚硅谷_JavaWEB_JavaWEB...

    行业文档-设计装置-二平动正交解耦并联微动平台.zip

    《二平动正交解耦并联微动平台》是一个深度探讨机械工程中微动平台设计的专业文档。本文档主要围绕二平动正交解耦并联微动平台的理论基础、设计方法、控制策略以及实际应用展开,旨在为相关领域的工程师和技术人员...

    ASP.NET企业级架构开发技术与案例教程 课件 ppt

    .NET MVC(Model-View-Controller)是一种设计模式,它将应用程序分为三个主要部分:模型(Model)、视图(View)和控制器(Controller)。在ASP.NET MVC中,模型处理数据逻辑,视图负责展示数据,而控制器则协调...

    SSH(整合完毕)框架小案例 --- 适合初学者

    在这个小案例中,"mytest"可能代表一个测试模块或者具体的业务功能。你可以在项目中找到对应的Action、Service、DAO以及视图文件,通过阅读注释理解每个部分的作用。同时,运行案例并观察控制台输出,有助于深入理解...

    Sping整合ActiveMq案例.zip

    在IT行业中,Spring框架是Java领域最常用的轻量级应用框架之一,而ActiveMQ则是Apache组织提供的一个开源消息中间件,常用于实现应用程序间的异步通信。本案例将重点讲解如何将Spring与ActiveMQ整合,以实现高效的...

    [程序天下:J2EE整合详解与典型案例.教程_光盘4.rar

    总之,《程序天下:J2EE整合详解与典型案例》教程的光盘4为学习者提供了一个实践J2EE技术的宝贵资源。通过对每个案例的深入学习和动手实践,读者可以掌握J2EE的核心概念,为开发复杂的企业级应用打下坚实的基础。

    Skynet基础入门例子详解(5)

    Skynet是一个轻量级、高并发的服务框架,它以事件驱动和微服务的方式设计,常用于网络游戏服务器开发。在《Skynet基础入门例子详解(5)》中,我们将探讨如何使用Skynet进行网络通信,以及它在处理socket连接和数据...

Global site tag (gtag.js) - Google Analytics