当JSF Bean实例化 之后 如何自动执行Bean中的方法? 10
当JSFBean实例化之后如何自动执行Bean中的方法?比如说这个bean中有个一个属性count,这个count的值是A方法中查询数据库得到的,前台JSF页面需要定时监...
当JSF Bean实例化 之后 如何自动执行Bean中的方法? 比如说 这个bean中有个一个属性count,这个count的值是A方法中查询数据库得到的,前台JSF页面需要定时监视这个count的值,请问有什么方法可以定时执行这个A方法,比如说线程调度之类的
展开
3个回答
展开全部
好像有人问过这个类似的问题。定时、局部刷新……
现在你的bean初始化时已经从A方法中得到count值。
public String A(){
得到count的逻辑……
return "前台页面导航";
}
自动刷新:(5秒后自动刷新,这样的例子很多)
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<script>
function reflesh(){
alert("每5秒钟刷新一次!");
document.location.reload();
}
setTimeout("reflesh()",5*1000);//每5秒钟刷新一次
</script>
</head>
<body>
</body>
</html>
JSF页面:refreshPage()方法写在自动刷新方法里。用来调用bean中的A方法。
function refreshPage(){
// 加载……定时……刷新 JS
document.getElementById("InputForm:refreshShow").onclick();
}
<h:form id="InputForm">
<a4j:commandLink id="refreshShow" action="#{bean.A}"
value="" reRender="需要刷新count值的组建的ID">
</a4j:commandLink>
</h:form>
这样就OK了。有点乱,希望对你有帮助。
现在你的bean初始化时已经从A方法中得到count值。
public String A(){
得到count的逻辑……
return "前台页面导航";
}
自动刷新:(5秒后自动刷新,这样的例子很多)
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<script>
function reflesh(){
alert("每5秒钟刷新一次!");
document.location.reload();
}
setTimeout("reflesh()",5*1000);//每5秒钟刷新一次
</script>
</head>
<body>
</body>
</html>
JSF页面:refreshPage()方法写在自动刷新方法里。用来调用bean中的A方法。
function refreshPage(){
// 加载……定时……刷新 JS
document.getElementById("InputForm:refreshShow").onclick();
}
<h:form id="InputForm">
<a4j:commandLink id="refreshShow" action="#{bean.A}"
value="" reRender="需要刷新count值的组建的ID">
</a4j:commandLink>
</h:form>
这样就OK了。有点乱,希望对你有帮助。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我说一下我的方案:
1.把你这儿bean的managed-bean-scope设置application
2.自己定义一个servlet,在初始化方法中取得这个bean,然后保存为本地变量,然后启动线程,
每隔固定时间,调用count方法
3.因为bean就是普通的bean,所以页面调用就很容易了,你直接#{bean.count}就可以取到
1.把你这儿bean的managed-bean-scope设置application
2.自己定义一个servlet,在初始化方法中取得这个bean,然后保存为本地变量,然后启动线程,
每隔固定时间,调用count方法
3.因为bean就是普通的bean,所以页面调用就很容易了,你直接#{bean.count}就可以取到
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询