@ManagedProperty 和 FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("bean") 之间的区别
Difference between @ManagedProperty and FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("bean")
有什么区别:
public class GameController implements Serializable{
@ManagedProperty(value="#{Gamebean}")
private Game game;
和
public class GameController implements Serializable{
private Game game;
public GameController(){
game =(Game)FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("Gamebean");
}
如果没有区别,哪种方法更好?
干杯。
如果 bean 不存在,@ManagedProperty
方法将自动创建它。 getSessionMap()
方法不会,因此可能 return null
如果 bean 不是事先(自动)创建的。
以最少的努力和关注实现相同的代码更好。
有什么区别:
public class GameController implements Serializable{
@ManagedProperty(value="#{Gamebean}")
private Game game;
和
public class GameController implements Serializable{
private Game game;
public GameController(){
game =(Game)FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("Gamebean");
}
如果没有区别,哪种方法更好? 干杯。
如果 bean 不存在,@ManagedProperty
方法将自动创建它。 getSessionMap()
方法不会,因此可能 return null
如果 bean 不是事先(自动)创建的。
以最少的努力和关注实现相同的代码更好。