Spring JSF集成:如何在JSF托管bean中注入Spring组件/服务?

我了解托管bean的工作方式类似于控制器,因为你的唯一任务是将“视图层”与模型“链接”。

要将bean用作托管bean,我必须声明@ManagedBean注释,这样我就可以直接与bean通信JSF。

如果要在此managedBean中注入某些组件(来自Spring),则有两种可能的方法:

  1. 在ManagedBean中选择属性(例如“ BasicDAO dao”),然后@ManagedProperty(#{"basicDAO"})在该属性上方进行声明。这样做,我是将”basicDAO”Spring中的bean注入ManagedBean中。

  2. 在ManagedBean类中声明为@Controller,然后将同时具有@ManagedBean@Controller批注。在财产上,"BasicDAO dao"我必须@Autowired从Spring 使用。

我的理解正确吗?

回答:

通过简单地从中扩展JSF bean,还有另一种在JSF管理bean中使用Spring管理bean的方法SpringBeanAutowiringSupport,Spring将处理依赖项注入。

@ManagedBean // JSF-managed.

@ViewScoped // JSF-managed scope.

public class GoodBean extends SpringBeanAutowiringSupport {

@Autowired

private SpringBeanClass springBeanName; // No setter required.

// springBeanName is now available.

}

以上是 Spring JSF集成:如何在JSF托管bean中注入Spring组件/服务? 的全部内容, 来源链接: utcz.com/qa/420851.html

回到顶部