scheduled定时任务+实例请求数据库
1.scheduled定时任务类:ScheduledDemo.java
package com.nantian.scheduled;
import java.util.Date;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
/**
* scheduled定时任务
*@author xjj13
*@component (把普通pojo实例化到spring容器中,相当于配置文件中的
*<bean id="" class=""/>)
*泛指各种组件,就是说当我们的类不属于各种归类的时候(不属于@Controller、@Services等的时候),我们就可以使用@Component来标注这个类
*/
@Component
public class ScheduledDemo {
/**
* 定时任务方法
* @Scheduled:设置定时任务
* 方法上添加该注解,表示方法会以定时任务的方式出现,一旦时间到达后,该方法就会被触发
* cron:(设置触发时间)cron表达式,定时任务触发是时间的一个字符表达式
*/
@Scheduled(cron="0/2 * * * * ?")//每两秒触发一次方法
public void scheduledMethod() {
System.out.println("定时器被触发"+new Date());
}
}
2.在启动类中开启定时任务的启用
springBoot中默认是对scheduled是不开启的
@SpringBootApplication
@EnableScheduling//开启scheduled定时任务
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
================================================================================
实例请求数据库
1.Application.java
package com.nantian;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.scheduling.annotation.EnableScheduling;
@SpringBootApplication
@EnableScheduling
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
2.
package com.nantian.scheduled;
import java.util.Date;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import com.nantian.dao.UserDao;
import com.nantian.pojo.User;
/**
* scheduled定时任务
*@author xjj13
*@component (把普通pojo实例化到spring容器中,相当于配置文件中的
*<bean id="" class=""/>)
*泛指各种组件,就是说当我们的类不属于各种归类的时候(不属于@Controller、@Services等的时候),我们就可以使用@Component来标注这个类
*/
@Component
public class ScheduledDemo {
@Autowired
private UserDao userDao;
/**
* 定时任务方法
* @Scheduled:设置定时任务
* 方法上添加该注解,表示方法会以定时任务的方式出现,一旦时间到达后,该方法就会被触发
* cron:(设置触发时间)cron表达式,定时任务触发是时间的一个字符表达式
*/
@Scheduled(cron="0/1 * * * * ?")//每两秒触发一次方法
public void scheduledMethod() {
List<User> users=(List<User>) userDao.findAllUsers();
System.out.println(users);
System.out.println("定时器被触发"+new Date());
}
}
3.执行结果图
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架