会员卡管理系统技术解析(十八)Timer定时监听
会员卡管理系统技术解析(十八)Timer定时监听
这个时候监听与定时器的配合使用就基本能够实现这个需求了。网上非常多代码并不完整,水平未到,看得太吃力了.以下以系统每天00:00:00进行的当日最大单据数维护进行实例解析。
<servlet>
<servlet-name>listener</servlet-name>
<servlet-class>MEMBCERP.Servlet.servletlistener</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>listener</servlet-name>
<url-pattern>/listener.do</url-pattern>
</servlet-mapping>
接着,就是定时监听的编写了,代码例如以下:
package MEMBCERP.Servlet; import java.util.Timer; import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet; public class servletlistener extends HttpServlet {
/*监听转发系统代理事件*/
private Timer timer = null;
public void init(ServletConfig config) throws ServletException{
super.init(config);
timer = new Timer(true);
timer.schedule(new Todo(), 0, 1000); /*參数:方法重定向,延迟,运行时间的间隔*/
} }
最后,便是监听到符合程序,满足条件便自行进行系统维护了,代码例如以下:
package MEMBCERP.Servlet; import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.TimerTask; import MEMBCERP.IService.JianKaYuFaFangIService;
import MEMBCERP.Service.JianKaYuFaFangService;
import MEMBCERP.pojo.SysMaxNumber;
public class Todo extends TimerTask{ @Override
public void run(){
SimpleDateFormat df = new SimpleDateFormat("HH:mm:ss");//设置日期格式
String timDate=df.format(new Date());
//监听是否进行日常维护
if (timDate.equals("00:00:00")) {
ChuShiHuaZuiDaDanJuShu();
}
} public JianKaYuFaFangIService jianKaYuFaFangService=new JianKaYuFaFangService(); //实例化类
//初始化当日最大单据数
public void ChuShiHuaZuiDaDanJuShu() {
SysMaxNumber lstZuiDaDanJuShu=new SysMaxNumber();
lstZuiDaDanJuShu.setDiaoBoJiLuZuiDaShu(0);
lstZuiDaDanJuShu.setFaFangJiLuZuiDaShu(0);
lstZuiDaDanJuShu.setGuaShiHuiFuJiLuZuiDaShu(0);
lstZuiDaDanJuShu.setHuiYuanKaZuoFeiJiLuZuiDaShu(0);
lstZuiDaDanJuShu.setHuiYuanKaHuanKaJiLuZuiDaShu(0);
lstZuiDaDanJuShu.setHuiYuanKaYouXiaoQiGengGaiJiLuZuiDaShu(0);
lstZuiDaDanJuShu.setHuiYuanKaZhuangTaiBianDongJiLuZuiDaShu(0);
lstZuiDaDanJuShu.setId(0);
lstZuiDaDanJuShu.setKuCunKaYouXiaoQiBianGengJiLuZuiDaShu(0);
lstZuiDaDanJuShu.setKuCunKaZuoFeiJiLuZuiDaShu(0);
lstZuiDaDanJuShu.setLingKaJiLuZuiDaShu(0);
lstZuiDaDanJuShu.setTuiLingJiLuZuiDaShu(0);
lstZuiDaDanJuShu.setGuaShiJiLuZuiDaShu(0);
lstZuiDaDanJuShu.setJianKaJiLuZuiDaShu(0);
lstZuiDaDanJuShu.setKuCunKaZuoFeiHuiFuJiLuZuiDaShu(0);
this.jianKaYuFaFangService.UpdateZuiDaDanJuShu(lstZuiDaDanJuShu);
}
}
到此,会员卡管理系统技术解析(十八)Timer定时监听 解析完成.如有不懂可留言提问.
否则,后果自负。
@终于解析权归本人全部
会员卡管理系统技术解析(十八)Timer定时监听的更多相关文章
- 钟表维修管理系统技术解析(一) MVC架构搭建
钟表维修管理系统技术解析(一) MVC架构搭建 1.1新建项目 第一步:打开VS2010界面,点击左上角文件,点击新建,选择项目 1.1(图1) 第二步:点击网站Web类型,选择ASP.net MV ...
- Spring ApplicationContext(八)事件监听机制
Spring ApplicationContext(八)事件监听机制 本节则重点关注的是 Spring 的事件监听机制,主要是第 8 步:多播器注册:第 10 步:事件注册. public void ...
- 通过定时监听input框来实现onkeyup事件-
问题:因为zepto无法使用onkeyup 事件 解决方法:通过给input框绑定focus 事件,定时的去监听input的值得改变,在鼠标移出input后,清除定时器 <!DOCTYPE ht ...
- Android商城开发系列(十四)—— 设置监听RecyclerView的位置
在前面的博客中有讲到过点击一个图片按钮控制RecyclerView的滚动到顶部位置的效果,但是那个图片按钮一直处在一个显示的状态,今天我们来改造一下那个地方,我们要实现的效果是:一开始打开的时候看不到 ...
- 老技术记录-C#+SqlServer使用SqlDependency监听数据库表变化
开发环境: .net / C# (.net core理论上也可以) 数据库:MS SQL Server 2005 以上 (我用的sqlserver2012) 功能:SqlDependency提供了一种 ...
- HAWQ技术解析(八) —— 大表分区
一.HAWQ中的分区表 与大多数关系数据库一样,HAWQ也支持分区表.这里所说的分区表是指HAWQ的内部分区表,外部分区表在后面"外部数据"篇讨论. 在数据仓库应用中 ...
- android 学习随笔二十九(自定义监听 )
package com.itheima.momo.dialog; import com.itheima.momo.R; import android.app.AlertDialog; import a ...
- Nginx源码研究八:nginx监听socket实现流程
前面描述了nginx系统分析nginx的配置文件,初始化模块相关参数的过程,这里利用nginx监听socket的实现过程,做一次完整的回顾 1.首先,nginx启动的main函数中,会先初始化cycl ...
- Vue(八):监听属性watch
Vue.js 可以通过 watch 来响应数据的变化. 以下实例模拟购物车里商品数量增加,对应价格也增加 <!--模拟购物车商品数量增加,价格也随之增加--> <div id = & ...
随机推荐
- VLine2.0——仿阿里巴巴VIPABC真人视频在线教育(基于Flash支持一对多多对多Web在线视频)
感兴趣的朋友可与我联系:acsebt@qq.com 一.登陆页 二.功能页
- Python的控制结构(转)
首先我的工作第一语言是c/c++(面向对象子集).选择学习python一方面是因为看很多人都说python开发效率高,所以想验证一下:另一方面,Eric S. Raymond在文章:如何成为一名黑客 ...
- hdu1561(树形dp)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1561 题意:n座城堡,每个里面都有宝物,要求在你可以攻占m个城堡得到的最多的宝物,但是如果要攻破一个城 ...
- 在静态方法里调用spring注入的方法
在静态方法里直接调用非静态方法是不行的. 那如何调用spring注入的方法呢? @Component public class AutoLoginUtil { @Autowired p ...
- java性能缓慢
虚拟帝国上面有很多营销软件是JAVA开发的!创业公司通常选择开源技术减少项目管理费用. 除了使用Java编程语言,创业公司也可以利用Java开发工具包的好处(JDK),Java运行时环境(JRE)和J ...
- Kafka学习(一)配置及简单命令使用
一. Kafka中的相关概念的介绍 Kafka是一个scala实现的分布式消息中间件,当中涉及到的相关概念例如以下: Kafka中传递的内容称为message(消息),message 是通过topic ...
- Windows Phone开发(33):路径之其它Geometry
原文:Windows Phone开发(33):路径之其它Geometry 上一节中,我们把最复杂的PathGeometry给干了,生剩下几个家伙就好办事了.一起来见见他们的真面目吧. 一.LineGe ...
- mysql安装注意
mysql安装教程,网上到处都有,我这里就不细说了. 但是有一点要注意,安装完之后,点击MySql 5.5 Command Line Client时,有可能出现一闪而过,打不开mysql的情况: 首先 ...
- swift学习一:介绍,开发文档下载
在今天wwdc2014公布会上.苹果今天公布了全新的编程语言Swift以及新版Xcode.对于开发人员来说,Swift包括了非常多开发人员喜欢的功能,能够与Objective-C和C语言共同工作.Sw ...
- SQL Server :理解GAM和SGAM页
原文:SQL Server :理解GAM和SGAM页 我们知道SQL Server在8K 的页里存储数据.分区就是物理上连续的8个页.当我们创建一个数据库,数据文件会被逻辑分为页和区,当用户对象创建时 ...