在JSF 2.0中注入托管bean

在JSF 2.0中,新的@ManagedProperty批注用于将受管bean依赖注入(DI)到另一个受管bean的属性中。

让我们看一个@ManagedProperty示例:

MessageBean.java –名为“ message ”的托管bean。

import java.io.Serializable;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;

@ManagedBean(name="message")
@SessionScoped
public class MessageBean implements Serializable {

	//business logic and whatever methods...

}

HelloBean.java –将“ message ” bean注入“ messageBean ”属性。

import java.io.Serializable;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ManagedProperty;
import javax.faces.bean.SessionScoped;

@ManagedBean
@SessionScoped
public class HelloBean implements Serializable {

	@ManagedProperty(value="#{message}")
	private MessageBean messageBean;

	//must povide the setter method
	public void setMessageBean(MessageBean messageBean) {
		this.messageBean = messageBean;
	}

	//...
}

在此示例中,它使用@ManagedProperty批注通过setter方法setMessageBean()将“消息” bean( MessageBean.java )DI到“ hello” bean( HelloBean.java )的属性( messageBean )中。

注意
为了使注入成功,注入属性( messageBean )必须提供setter方法。

下载源代码

下载它– JSF-2-Inject-Managed-Beans-Example.zip (10KB)

参考

  1. ManagedProperty Javadoc
  2. JSF 2.0:不存在托管bean x,请检查是否存在适当的getter和/或setter方法

翻译自: https://mkyong.com/jsf2/injecting-managed-beans-in-jsf-2-0/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值