Google 开源的依赖注入库,比 Spring 更小更快!
作者:GinoBeFunny https://zhuanlan.zhihu.com/p/24924391 Google开源的一个依赖注入类库 Guice ,相比于 Spring IoC 来说更小更快。 Elasticsearch大量使用了Guice,本文简单的介绍下Guice的基本概念和使用方式。 学习目标 概述:了解Guice是什么,有什么特点; 快速开始:通过实例了解Guice; 核心概念:了解Guice涉及的核心概念,如绑定(Binding)、范围(Scope)和注入(Injection); 最佳实践:官方推荐的最佳实践; Guice概述 Guice是Google开源的依赖注入类库,通过Guice减少了对工厂方法和new的使用,使得代码更易交付、测试和重用; Guice可以帮助我们更好地设计API,它是个轻量级非侵入式的类库; Guice对开发友好,当有异常发生时能提供更多有用的信息用于分析; 快速开始 假设一个在线预订Pizza的网站,其有一个计费服务接口: public interface BillingService { /** * 通过信用卡支付。无论支付成功与否都需要记录交易信息。 * * @return 交易回执。支付成功时返回成功信息,否则记录失败原因。 */ Receipt chargeOrder(PizzaOrder order, CreditCard