Springmvc项目启动后定时执行某个方法
来源:互联网 发布:sql数据库编程 编辑:程序博客网 时间:2024/06/04 18:43
1.需求
在数据库中有一个表储存定时发布的信息和定时发布的时间,在项目发布后,每过5分钟定时读一次数据库,如果到了定时发布时间就操作发布。比如定时发布某几篇文章,数据库就保存文章的id串以及发布时间
1.web.xml配置
<servlet> <servlet-name>GenerateWCData</servlet-name> <servlet-class>com.modu.secure.view.admin.phone.GenerateWCData</servlet-class> <load-on-startup>2</load-on-startup> </servlet>
2.继承httpservlet的类,初始化执行init()方法
public class GenerateWCData extends HttpServlet {public void init(){Timer timer = new Timer(); timer.schedule(new TimerTask() { public void run() { System.out.println("-------设定要指定任务--------"); } }, 1000*60*5, 1000*60*5); }}这儿是每过5分钟执行一次方法
3.模板
public class Test {public static void main(String[] args) { //timer1(); timer2(); //timer3(); //timer4(); } // 第一种方法:设定指定任务task在指定时间time执行 schedule(TimerTask task, Date time) public static void timer1() { Timer timer = new Timer(); timer.schedule(new TimerTask() { public void run() { System.out.println("-------设定要指定任务--------"); } }, 2000);// 设定指定的时间time,此处为2000毫秒 } // 第二种方法:设定指定任务task在指定延迟delay后进行固定延迟peroid的执行 // schedule(TimerTask task, long delay, long period) public static void timer2() { Timer timer = new Timer(); timer.schedule(new TimerTask() { public void run() { System.out.println("-------设定要指定任务--------"); } }, 2000*5, 2000*5); } // 第三种方法:设定指定任务task在指定延迟delay后进行固定频率peroid的执行。 // scheduleAtFixedRate(TimerTask task, long delay, long period) public static void timer3() { Timer timer = new Timer(); timer.scheduleAtFixedRate(new TimerTask() { public void run() { System.out.println("-------设定要指定任务--------"); } }, 1000, 2000); } // 第四种方法:安排指定的任务task在指定的时间firstTime开始进行重复的固定速率period执行. // Timer.scheduleAtFixedRate(TimerTask task,Date firstTime,long period) public static void timer4() { Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.HOUR_OF_DAY, 12); // 控制时 calendar.set(Calendar.MINUTE, 0); // 控制分 calendar.set(Calendar.SECOND, 0); // 控制秒 Date time = calendar.getTime(); // 得出执行任务的时间,此处为今天的12:00:00 Timer timer = new Timer(); timer.scheduleAtFixedRate(new TimerTask() { public void run() { System.out.println("-------设定要指定任务--------"); } }, time, 1000 * 60 * 60 * 24);// 这里设定将延时每天固定执行 } }
0 0
- Springmvc项目启动后定时执行某个方法
- web项目启动时,执行某个方法
- web项目启动时,执行某个方法
- web项目启动完成执行某个方法
- SpringMVC在启动完成后执行方法
- spring项目启动完成后,自动执行一次某个特定方法。
- 在web项目启动时,执行某个方法
- 项目启动就执行某个程序的方法
- 在web项目启动时,执行某个方法
- 在web项目启动时,执行某个方法
- 项目启动是执行某个方法(监听器的使用)
- 在web项目启动时,执行某个方法
- Spring/SpringMVC在启动完成后执行方法
- Spring/SpringMVC在启动完成后执行方法
- Spring/SpringMVC在启动完成后执行方法
- SpringMVC启动后自动执行
- Springmvc启动后执行操作
- 项目启动后开启定时任务方法-->ServletContextListener
- Linux(Centos)之安装Java JDK及注意事项
- Android webview手动校验https证书(by 星空武哥)
- Oracle数据库整库文件路径变更
- android开发之避免使用枚举
- Java Spring Redis搭建
- Springmvc项目启动后定时执行某个方法
- 【C++】n_element的用法
- Linux(Centos)之安装tomcat并且部署Java Web项目
- ROS + Caffe 机器人操作系统框架和深度学习框架笔记 (機器人控制與人工智能)
- jq 命令行 Shell 处理json 格式数据 示例
- 采用APT&RxJava造一辆RxBus
- Android Activity间传自定义对象,Parcel代码自动生成工具
- MySQL 存储过程或者函数中传参数实现where id in(1,2,3,...)IN条件拼接
- zookeeper集群搭建