WEB开发网
开发学院软件开发Java 使用 Blueprint Container 规范构建 OSGi 应用程序... 阅读

使用 Blueprint Container 规范构建 OSGi 应用程序

 2009-11-26 00:00:00 来源:WEB开发网   
核心提示: 清单 3 展示了一个静态的工厂方法构造,在这个例子中,使用 Blueprint Container 规范构建 OSGi 应用程序(5),class 属性指定了包含静态工厂方法的类的名称,这个静态工厂方法的名称由 factory-method 属性指定,以创建 Account 对象,一旦工厂返回创

清单 3 展示了一个静态的工厂方法构造。在这个例子中,class 属性指定了包含静态工厂方法的类的名称。这个静态工厂方法的名称由 factory-method 属性指定。Blueprint Container 将对 AccountFactory 类调用 createAccount() 静态方法并将 2 作为参数传递,用于创建 Account 对象。当工厂返回创建的对象后,容器将向它注入描述属性。


清单 3. 静态工厂方法示例
  public class StaticAccountFactory {    
    public static Account createAccount(long number) { 
     return new Account(number); 
    } 
  } 
 
  <bean id=”accountTwo” class=“org.apache.geronimo.osgi.StaticAccountFactory” 
     factory-method=“createAccount”>  
    <argument value=”2”/> 
    <property name=”description” value=”#2 account”/>   
  </bean> 

对于实例工厂方法构建,如清单 4 所示,使用了两个管理器。其中一个管理器是工厂,另一个管理器使用该工厂创建对象。factory-ref 用来指定顶级 bean 的 ID 或行为类似工厂的引用管理器。提供的工厂对象必须具有一个由 factory-method 属性指定的工厂方法。

在本例中,accountFactory bean 管理器是一个工厂。Blueprint Container 将首先创建 AccountFactory 实例,该实例具有自己的参数和属性。在本例中,只指定了一个参数:工厂名。Blueprint Container 随后将对 AccountFactory 实例调用 createAccount() 方法,然后将 3 作为参数传递,以创建 Account 对象。一旦工厂返回创建的对象,容器将向其注入描述属性。

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:使用 Blueprint Container

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接