为什么我不能在函数内使用ManagedProperty?

时间:2017-09-18 12:46:58

标签: java jsf web

我想让DB对象只在需要时创建,所以我想做这样的事情

public class Data {

public List<Group> getGroups(){
    List<Group> MyList=new ArrayList<Group>();
    Connection conn=null;
@ManagedProperty(value = "#{myConnection}")
myConnection getCon;

}

但这不起作用,相反我必须这样做

public class Data {
@ManagedProperty(value = "#{myConnection}")
myConnection getCon;
public List<Group> getGroups(){
    List<Group> MyList=new ArrayList<Group>();
    Connection conn=null;


}

为什么我不能在函数内部创建managedProperty? 我考虑过它,外面应该可以,因为它会在我创建对象时创建,但无论如何都要在函数内部创建它?

1 个答案:

答案 0 :(得分:1)

您不能在函数内使用ManagedProperty注释。它只能用于场地。请参阅下面的ManagedProperty的定义

@Retention(value=RUNTIME)
@Target(value=FIELD)
public @interface ManagedProperty