Java依赖注入
作者 Craig Wickesser 译者 张龙 发布于 2009年5月25日 上午12时35分
社区 Java 主题 标签 依赖注入, Guice, Spring框架
过去的几年间,Google和SpringSource分别通过其开源项目Guice及Spring Framework提供了依赖注入的功能。然而直到现在开发者也没有一种标准的、独立于供应商的方式从而无需修改其源文件就能在这些框架之间进行切换。但时过境迁,如果一切顺利的话一些核心的依赖注入注解和接口将会添加到Java SDK中。
就在几周前Google宣布了其与SpringSource的合作:
此次合作的目的在于标准化一套经过实践检验的、没有争议的注解,以便使那些被注入的类能够在这两个框架间进行移植。
本周初一个官方的提议(JSR 330:Java依赖注入)已经提交给了JCP(Java Community Process)。该提议表明此JSR的目标在于Java SE平台,至少是5.0版本,但同时也希望为Java EE中的依赖注入打下一个良好的基础。最先提出的一套注解包括:
@Inject – 用于标识注入的构造方法、方法及属性
@Qualifier - 用于标识限定的注解
@Scope - 用于标识范围的注解
@Named - 基于字符串的限定
@Singleton - 表明被注解的类型只会被实例化一次
整个过程,从最初的注解到JSR的提交都是开放的,这样就能充分听取社区的反馈意见。事实上,社区已经通过多个博客对此次合作、提议甚至是整件事的价值提出了各种看法。
下面是个投票系统,表明了InfoQ社区的看法,你也来参加吧,结果可能很有意思。
JSR 330 Poll
Do you think JSR 330, Dependency Injection for Java, is necessary?
Yes, I would certainly use it.
Sure, I guess standardization is a good thing.
No, how often am I really going to switch dependency injection providers?
I don't really care.
Vote
Total Votes : 743
Add this poll to your blog
Suggest A Poll
View Past Polls
Post Comments (0)
Create Your Own Poll
Powered By MicroPoll
查看英文原文:Dependency Injection for Java
分享到:
相关推荐
Java依赖注入框架Guice2是Google开发的一款轻量级的依赖注入库,它极大地简化了Java应用程序中的对象创建和管理。Guice2以其简洁的API和强大的功能在开发者社区中赢得了广泛的认可。依赖注入(Dependency Injection...
Java依赖注入(Dependency Injection,简称DI)是一种设计模式,它允许我们解耦应用程序的组件,使得组件之间的依赖关系在运行时动态地管理。这个压缩包中的简单Java依赖注入框架,结合了面向切面编程(Aspect-...
依赖注入早期叫控制反转 也可以称反射 他们的意义都相同 当某个 Java 实例 调用者 需要另一个Java 实例 被调用者 时 在传统的程序设计过程中 通常由调用者来创建被调用者的实例 而在依赖注入的模式下 创建被调用者的...
模仿Spring实现一种基于xml配置文件的依赖注入机制。文件中将实现3中注入,一是单值注入,包括int,float,double,char等,也包括String注入;二是Java容器注入,包括List,Set,Map三种容器的注入,最后一种是java ...
在Java开发领域,Spring框架是应用最广泛的轻量级框架之一,它提供了强大的依赖注入(Dependency Injection,简称DI)功能,极大地简化了组件之间的耦合。本知识点将深入探讨Spring框架如何通过注解方式实现依赖注入...
在这个"DependencyTest:JAVA依赖注入示例"中,我们将深入探讨这一核心概念。 依赖注入的核心思想是,一个对象不应该自行创建或查找它所依赖的对象,而是应该由外部实体将依赖关系传递给它。这种方式使得对象可以在...
Java依赖注入(Dependency Injection,简称DI)是一种设计模式,它允许我们解耦代码,提高软件组件的可测试性和可维护性。"PureJin"可能是某个项目或库的名字,其核心概念是通过代码来实现Java的依赖注入。下面将...
Boing 是一个用 Clojure 编写的 Java 依赖注入工具。 这一举措背后的主要动机是摆脱 Spring bean 和它在我们的软件中携带的许多依赖项。 因此得名……如果您有更好的建议,请告诉我们。 ##我们为什么要创建这个? ...
Dagger,一个由Google开发的Java库,被设计为一个强大的依赖注入框架,广泛应用于Android和Java项目中。依赖注入(Dependency Injection,简称DI)是一种软件设计模式,它帮助开发者管理对象之间的依赖关系,使代码...
Spring的依赖注入提供了XML、注解和Java配置等多种方式,满足不同场景的需求。自动配置是Spring Boot的一大特色,极大地简化了微服务的开发。理解并熟练掌握这些方式,对于提升Spring应用的开发效率和质量至关重要。...
Java 开发学习(六)----DI 依赖注入之 setter 及构造器注入解析 本文将详细介绍 Java 中的依赖注入(Dependency Injection,简称 DI),特别是 setter 注入和构造器注入两种方式的使用和实现。 一、DI 依赖注入 ...
Spring依赖注入是Spring框架的核心特性之一,它极大地简化了Java应用程序的开发,使得对象之间的依赖关系得以解耦,提高了代码的可测试性和可维护性。本文将深入探讨Spring依赖注入的底层实现机制。 首先,我们要...
动态 IoC 是在运行期间采用 Java 的反射机制来实现依赖注入,而静态 IoC 是实现对字节码的更改从而实现依赖关系的注入。 动态 IoC 的优点是实现灵活性高,在运行期可以接受变更而无需修改代码,实例的产生由容器...
在Java开发中,Spring框架以其强大的依赖注入(Dependency Injection,简称DI)功能而闻名。依赖注入是一种设计模式,它允许我们解耦组件,使我们的应用程序更加灵活,易于测试和维护。本篇文章将深入探讨Spring框架...
Guice,全称为Google Guice,是一款由Google开发的轻量级依赖注入(Dependency Injection,简称DI)框架,主要用于简化Java应用的初始化和组件管理。依赖注入是一种设计模式,它可以帮助开发者解耦代码,提高软件的...
一个非常简单的 Java 依赖注入 (DI) 引擎。 json编码 Json 库的使用 Json 值到 Java 类型的映射: 字符串 => java.lang.string 整数 => java.lang.Long 十进制数 => java.lang.Double true 或 false => java....
自定义依赖注入工具类SpringUtil.java
在Spring框架中,依赖注入(Dependency Injection,DI)是一种核心设计模式,它使得对象之间的依赖关系得以解耦,提高了代码的可测试性和可维护性。本篇将详细讲解如何使用静态工厂方法进行依赖注入,结合提供的...
Spring框架作为一款优秀的轻量级Java应用开发框架,其核心理念之一就是依赖注入(Dependency Injection, DI)。依赖注入不仅能够帮助开发者降低代码间的耦合度,提高软件的可维护性和可扩展性,还能简化项目配置,...
Java Spring 框架是企业级Java应用开发的首选框架之一,其核心特性之一就是依赖注入(Dependency Injection,简称DI)。依赖注入是一种设计模式,它允许我们解耦组件,提高代码的可测试性和可维护性。Spring框架通过...