当前位置:首页 > 开发 > 编程语言 > 编程 > 正文

ioc实例

发表于: 2012-12-24   作者:blackproof   来源:转载   浏览次数:
摘要: 简单的实现了一下控制反转,将各个visitor访问代码分不到不同的visitor类中   visitor-->node    private static Map<Class<?>, AbstractNodeVisitor<IPigBuilder>> visitMap; static { visitM

简单的实现了一下控制反转,将各个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实例

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
Spring的模块化是很强的,各个功能模块都是独立的,我们可以选择的使用。这一章先从Spring的IoC开始
Spring的模块化是很强的,各个功能模块都是独立的,我们可以选择的使用。这一章先从Spring的IoC开始
Spring中IoC的入门实例 原文:http://dev.yesky.com/400/2508400.shtml#top   Spring的模块化是很
Spring框架核心由两部分组成: 第一部分是反向控制(IOC),也叫依赖注入(DI); 控制反转(依赖注入)的
5 IOC
引述:IoC(控制反转:Inverse of Control)是Spring容器的内核,AOP、声明式事务等功能在此基础上
6 IOC
引述:IoC(控制反转:Inverse of Control)是Spring容器的内核,AOP、声明式事务等功能在此基础上
上篇博客【SSH进阶之路】Spring简介,搭建Spring环境——轻量级容器框架(一),我们简单的介绍了Sp
双十一过去了,终于可以把这篇博客补上了。 本文将分析BeanWrapperImpl,出现了大量的源码。如果你
使用Maven创建project并配置依赖项 首先创建一个Maven Project: 然后选择创建Maven 的webapp实例,
源自:陈刚 (个人网站) 注:遗憾的一点是,图片的链接已失效,但基本不影响阅读。 第二章 Spring中I
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号