我正在尝试使用ChartBeanPrimeFaces 的样本.这是观点:
<h:form>
<p:layoutUnit position="center">
<p:lineChart id="linear" value="#{chartBean.linearModel}" legendPosition="e"
title="Linear Chart" minY="0" maxY="1000" style="height:600px"/>
</p:layoutUnit>
</h:form>
Run Code Online (Sandbox Code Playgroud)
这是豆子:
@Named
@RequestScoped
public class ChartBean implements Serializable {
private CartesianChartModel categoryModel;
private CartesianChartModel linearModel;
public ChartBean() {
System.out.println("ChartBean constructed");
createCategoryModel();
createLinearModel();
}
// ...
}
Run Code Online (Sandbox Code Playgroud)
当我运行它时,我注意到在打开页面时调用了这个bean的构造函数两次.日志显示以下内容:
INFO:ChartBean构造了
INFO:ChartBean
所以bean被实例化了两次.这是怎么造成的,我怎么能避免这种情况?我正在与数据库进行交互,以便在UI中显示一些数据,这样就不必两次获取数据.