`

ioc实例

    博客分类:
  • java
阅读更多

简单的实现了一下控制反转,将各个visitor访问代码分不到不同的visitor类中

 

visitor-->node 

 

	private static Map<Class<?>, AbstractNodeVisitor<IPigBuilder>> visitMap;
	static {
		visitMap = new ConcurrentHashMap<Class<?>,AbstractNodeVisitor<IPigBuilder>>();
		visitMap.put(FilterNode.class, new FilterNodeVisitor());
		visitMap.put(GroupNode.class, new GroupNodeVisitor());
		visitMap.put(JoinNode.class, new JoinNodeVisitor());
		visitMap.put(StoreNode.class,new  StoreNodeVisitor());
		visitMap.put(LoadNode.class, new LoadNodeVisitor());
		visitMap.put(DBStoreNode.class, new DBStoreNodeVisitor());
		visitMap.put(DBLoadNode.class, new DBLoadNodeVisitor());
		visitMap.put(OrderByCnd.class, new OrderByNodeVisitor());
	}

	@Override
	public IPigBuilder visit(AbstractNode node) throws NodeErrorException {
		if (!visitMap.containsKey(node.getClass())) {
			return null;
		}
		AbstractNodeVisitor<IPigBuilder> visitor = visitMap.get(node.getClass());
		return visitor.visit(node);
	}
 
分享到:
评论

相关推荐

    自己实现ioc实例demo

    在这个“自己实现ioc实例demo”中,我们将探讨如何通过XPath解析XML文件来实现这一功能。 首先,让我们了解什么是依赖注入。在传统的编程中,一个类通常会自行创建它需要的对象,这导致了类与对象的紧密耦合。而在...

    Spring-IOC实例

    **Spring-IOC实例详解** Spring框架是Java开发中不可或缺的一部分,尤其在企业级应用中,其Inversion of Control(IoC)容器是其核心特性之一。IoC,也被称为依赖注入(Dependency Injection,DI),是一种设计模式...

    struts+spring ioc 实例

    本实例主要关注Struts与Spring的集成,特别是Spring的Inversion of Control (IoC)容器在其中的作用。 Struts是一个MVC(Model-View-Controller)框架,它主要用于处理用户请求,控制应用程序流程,并提供视图模板来...

    Spring3.1的IoC实例

    总的来说,Spring 3.1的IoC实例展示了如何通过控制反转和依赖注入来简化Java应用的开发和维护。通过XML、注解和Java配置等方式,我们可以灵活地管理对象生命周期,降低组件间的耦合,从而提高软件的可测试性和可扩展...

    Spring 的DI和IoC实例详解(转)

    `Spring 的DI和IoC实例详解.txt`可能是博客文章的文本版本,详细解释了Spring的DI和IoC如何在实际应用中工作。 总结来说,Spring的DI和IoC是其核心特性,它们提供了一种优雅的方式来管理对象的依赖关系,增强了代码...

    EF4+MVC6+AutofacIOC实例

    标题中的“EF4+MVC6+AutofacIOC实例”代表了一个集成开发项目,它结合了Entity Framework 4(数据库访问技术),ASP.NET MVC 6(Web应用程序框架)和Autofac(依赖注入容器)。这是一个针对初学者的示例框架,旨在...

    浅谈springioc实例化bean的三个方法

    浅谈Spring IOC实例化Bean的三个方法 Spring IOC(Inversion of Control,控制反转)是Spring Framework中的一种核心机制,用于管理Bean的生命周期。实例化Bean是IOC的核心步骤之一,本文将详细讲解Spring IOC实例...

    IoC对象实例IoC对象实例

    IoC(Inversion of Control,控制反转)是一种设计模式,主要应用于软件开发中,尤其是在使用面向对象编程语言如C#时。控制反转的核心思想是将对象的创建和管理权交给一个外部容器,而不是由对象自身负责。这样可以...

    springIOC实例

    现在,我们来看如何运行这个简单的Spring IOC实例。首先,你需要创建一个Spring配置文件(如`springioc01.xml`),然后编写你的业务类和它们的依赖。接着,你需要一个启动程序来加载配置并初始化容器: ```java ...

    Spring中IoC的入门实例

    Spring中的IoC(Inversion of Control,控制反转)是一种设计原则,它将对象的创建和管理权交给框架处理,使得应用程序的组件之间解耦。在本例中,我们将通过一个简单的例子来理解如何在Spring中使用IoC。 首先,...

    spring aop ioc实例

    开发者只需要定义对象的配置,如类的bean定义,然后由容器负责实例化、装配和管理这些对象。这降低了组件之间的耦合度,因为对象的依赖关系不再硬编码在代码中,而是通过配置文件或注解来声明。 Spring的bean定义...

    创建Maven项目和Spring IOC实例过程解析

    创建Maven项目和Spring IOC实例过程解析 一、Maven项目创建过程 Maven是一个基于项目对象模型(Project Object Model,POM)的项目管理工具,主要用于管理和构建Java项目。创建Maven项目需要使用IDEA开发工具,并...

    Spring的ioc小案例

    在案例中,可能会有一个名为`beans.xml`的配置文件,其中定义了bean的实例化、属性配置以及它们之间的依赖关系。 2. **Bean的声明**:在`beans.xml`中,每个bean都通过`&lt;bean&gt;`标签进行声明,包括bean的ID、class...

    SpringIOC示例源代码

    3. `TestIoC.java`:这是一个关于IoC容器的测试类,它可能使用Spring的ApplicationContext接口来加载bean.xml配置,然后通过容器获取并测试bean实例。 4. `ServiceBean.java`:这可能是一个通用的服务bean,用于...

    Android 设计模式 示例集合 以及IOC注解事例 Demo

    这个压缩包"Android 设计模式 示例集合 以及IOC注解事例 Demo"显然包含了多种设计模式的实践示例和IOC(Inversion of Control)注解的应用。下面将详细探讨这些关键知识点。 1. **设计模式**: - **单例模式**:...

    Spring IOC容器应用实例

    **Spring IOC 容器应用实例** Spring 框架的核心组件之一是 Inversion of Control (IoC) 容器,也常被称为依赖注入(Dependency Injection)容器。IoC 是一种设计模式,它将对象的创建和管理从应用程序的业务逻辑中...

    ioc_example.rar

    在这个名为“ioc_example.rar”的压缩包中,我们可以期待找到一个手写的IOC实例,这将帮助我们深入理解IOC的工作原理和实现方式。通常,IOC的实现方式有两种:依赖注入(Dependency Injection,DI)和服务定位器...

    Spring+Hibernate+Jpa+Struts2整合实例

    标题 "Spring+Hibernate+Jpa+Struts2整合实例" 描述的是一个综合性的Web开发教程,它将四个关键的Java技术框架集成在一起,用于构建高效的企业级应用程序。这个实例涵盖了Spring作为整体应用的管理框架,Hibernate...

    Unity Ioc Container 实例

    在Unity中,Ioc容器是关键组件,负责管理和实例化对象,同时也处理对象之间的依赖关系。让我们深入探讨Unity Ioc Container的核心概念、工作原理以及如何在实际项目中应用。 ### 1. 依赖注入(Dependency Injection...

Global site tag (gtag.js) - Google Analytics