Ben*_*Ben 5 subclass postconstruct jsf-2 managed-bean managed-property
我正在使用类的层次结构,我最好尝试做的是@ManagedBean
继承一个具有@ManagedProperty
成员和@PostConstruct
方法的类.
具体来说,这会有用吗?:
public class A {
@ManagedProperty
private C c;
@PostConstruct
public void init() {
// Do some initialization stuff
}
public C getC() {
return c;
}
public void setC(C c) {
this.c = c;
}
}
@ManagedBean
@SessionScoped
public class B extends A {
// Content...
}
Run Code Online (Sandbox Code Playgroud)
提前致谢!
Bal*_*usC 13
这@ManagedProperty
是继承的,并将以这种方式工作.如果@PostConstruct
子类本身没有@PostConstruct
方法,那么也将继承.可能只有一个.因此,如果子类本身具有a @PostConstruct
,则不会调用超类"one".
因此,如果重写@PostConstruct
子类中的内容,则需要显式调用超类"one".
public class SuperBean {
@PostConstruct
public void init() {
// ...
}
}
Run Code Online (Sandbox Code Playgroud)
@ManagedBean
public class SubBean extends SuperBean {
@PostConstruct
public void init() {
super.init();
// ...
}
}
Run Code Online (Sandbox Code Playgroud)
或者,提供子类必须实现的抽象方法(不带@PostConstruct
!).
public class SuperBean {
@PostConstruct
public void superInit() {
// ...
init();
}
public abstract void init();
}
Run Code Online (Sandbox Code Playgroud)
@ManagedBean
public class SubBean extends SuperBean {
@Override
public void init() {
// ...
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2070 次 |
最近记录: |