java Action里面每隔5秒去调用一个dao数据库查询类,当返回值满足条件或者时间到2分钟就停止调用

怎么写?RT... 怎么写?RT 展开
 我来答
百度网友561251d
推荐于2016-08-23 · TA获得超过185个赞
知道小有建树答主
回答量:324
采纳率:0%
帮助的人:109万
展开全部
package com.lvjj.entity;
import java.util.Date;
import java.util.TimerTask;
public class WrongTimerTask extends TimerTask {
private Date start; //开始时间
public Date getStart() {
return start;
}
public void setStart(Date start) {
this.start = start;
}
public void run() {
//调用Dao层

if (true) {//DAO层满足条件
this.cancel();
}
Date d = new Date();//当前时间
try {
long t = d.getTime()- start.getTime(); //当前时间减去开始时间
if(t==120000)//2分钟
this.cancel();//退出
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
------------------------上面是定时器类

package com.lvjj.main;
import java.util.Date;
import java.util.Timer;
import com.lvjj.entity.WrongTimerTask;
public class Time {
/**
* @param args
*/
public static void main(String[] args) {
try {
WrongTimerTask task = new WrongTimerTask();
Timer timer = new Timer("TestTimer");
task.setStart(new Date());
timer.scheduleAtFixedRate(task, 0, 1000);

} catch (Exception e) {
e.printStackTrace();
}
}
}

-----------------------上面是测试执行类
你只要把定时器类的调用DAO层方法和Dao层满足的条件改一下就可以了
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友fd45a67
2013-10-14 · TA获得超过273个赞
知道小有建树答主
回答量:221
采纳率:100%
帮助的人:106万
展开全部
为什么是action里面呢?
如果非要在action里面的话可以考虑用ajax去调用action然后在js里面判断
如果非阻塞执行可以考虑用线程或者定时器
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
1997排长
高粉答主

2016-01-11 · 说的都是干货,快来关注
知道大有可为答主
回答量:1.1万
采纳率:0%
帮助的人:793万
展开全部
1.service为null的情况一般有几种情况:spring的配置文件没有配置;依赖注入由于写的不仔细而没有实现注入等原因。首先检查是否在spring的配置文件中注入了想要的service如果有,检查是否因为大小写的小错误而不能实现注入。
2.可以在action的这样处理:
让action继承一个自己编写的BaseAction 在让BaseAction去继承DispatchAction 在BaseAction中实现service的获取
public class BaseAction extends DispatchAction{
protected Object getBean(String id){
WebApplicationContext context = WebApplicationContextUtils.getWebApplicationContext(this.servlet.getServletContext());
return context.getBean(id);
}
}
然后在action中就可以直接通过方法得到你想要的service。
IService service = (IService) getBean("想要的service");
就可以用service调用你的CRUD方法执行了。
这里主要用到的是spring的DI(依赖注入)spring的核心之一。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式