Java定时刷新数据库,另一个方法怎么获取到刷新的内容,

20170421w 2017-04-21 05:08:16

//获取数据库内容
public class shuXinText {

public static List getlist(){


String invid = null;

String result_sign=null;
ArrayList list=new ArrayList();
try {
java.sql.Connection conn;
conn = new DatabaseConnection().getConnection();
PreparedStatement st=conn.prepareStatement("select inv_id, result_sign from io_invoice_title where result_sign=0");
st.execute();
ResultSet rs=st.getResultSet();
while (rs.next()) {
invid=rs.getString("inv_id");

result_sign=rs.getString("result_sign");


// System.out.println(invid);

list.add(invid);
}



} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return list;
}
}

///定时刷新数据库
public class CourseAction {
int count = 0;

public List showTimer() {
final shuXinText shuXinText=new shuXinText();

//final InvoicetitleServlet servlet =new InvoicetitleServlet();
//servlet.sendvoidmessage();
TimerTask task = new TimerTask() {

@Override
public void run() {
shuXinText shuXinText=new shuXinText();
shuXinText.getlist();

++count;
System.out.println("时间=" + new Date() + " 执行了" + count + "次");
}
};

//设置执行时间
Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH);
int day = calendar.get(Calendar.DAY_OF_MONTH);//每天

calendar.set(year, month, day, 00, 00, 00);
Date date = calendar.getTime();
Timer timer = new Timer();
System.out.println(date);
int period = 5* 1000;
timer.schedule(task, date, period);
return null;
}
}
现在我要获取刷新的inv_id 在另外 一个方法应该怎么接收过来?还是调用 shuXinText方法还是 CourseAction才能取到。CourseAction 刷新是不是shuXinText这个方法的内容也就刷新了?直接用shuXinText方法的到?有大神给我说说嘛。
现在做的工作是刷新数据库,有新的 数据就拼报文发送到url,获取到返回的值在加入到数据库 。本人新手。没人带,求教
...全文
606 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
20170421w 2017-04-22
  • 打赏
  • 举报
回复
这张表先判定result_sign这个值是否为0.是0的话就是没发送。获取这个主键的id在查询别的表的内容。拼接好报文。我用的是soap的信封加的xml报文。http发送。 监听器没用过。我打算报这个定时刷新数据库的方法写在web.xml,让Tomcat启动时自动就刷新了。现在 我要获取这个表result_sign这个值是否为0.的id。 然后在获取其他表和这张表拼接的xml报文。 现在问题是 我直接用获取到id的这个方法就可以了吗?还有感谢你的回答
咸哼酒家 2017-04-21
  • 打赏
  • 举报
回复
定时查询数据库: 1 看你的代码是某张表,web.xml 或者其他某些xml文件中加个监听器(几行代码,可以百度),设好监听器, 在方法中写查询数据库表,select查询, 2 判断是否是新数据(表里面有什么字段状态什么的,表示是新数据吗?没有的可能要做个缓存设置了) 3 select 到新数据,组装报文(你们是用TCP的socket通讯吗?如果是,Socket发送,接受返回值) 4 insert into 数据库表
咸哼酒家 2017-04-21
  • 打赏
  • 举报
回复
我先来呗咖啡

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧