你可以把SoybeanMilk 框架的功能简单地理解为“从对象工厂取得某个ID对应的对象并调用它的某个方法”,而Spring就是以ID来管理对象的,因此SoybeanMilk可以很容易地与Spring整合。
框架的org.soybeanMilk.web.servlet.DispatchServlet提供了一个用于扩展对象工厂的初始化参数“external-resolver-factory-key ”,它可以用于整合Spring、Guice等IOC容器。
下面介绍如何将SoybeanMilk与Spring整合。
首先,定义一个对象工厂:
然后 定义一个应用监听器,并把它配置在web.xml中Spring初始化监听器之后:
然后,将DispatchServlet初始化参数“external-resolver-factory-key ”的值设置为“springAppContextResolverFactory”:
完成!
现在,你可以在SoybeanMilk配置文件<invoke>标签的resolver属性中使用在Spring中定义的那些<bean>了。
比如,假设有下面的Spring配置:
那么你可以在SoybeanMilk配置中直接调用这个bean的方法: