From ec8ad1f7b40fdbbfb3e1eaa7f48d420f2b79bafb Mon Sep 17 00:00:00 2001 From: Cui YongXing <2835316714@qq.com> Date: Mon, 22 Jul 2024 09:34:06 +0800 Subject: [PATCH] day04 --- .gitignore | 35 ++++++++++++++++++ pom.xml | 29 +++++++++++++++ src/main/java/com/bwie/BwieApplication.java | 13 +++++++ .../bwie/controller/ScheduledController.java | 27 ++++++++++++++ .../service/ScheduledPrintNameService.java | 8 ++++ .../impl/ScheduledPrintNameServiceImpl.java | 16 ++++++++ 理论/img.png | Bin 0 -> 23017 bytes 7 files changed, 128 insertions(+) create mode 100644 .gitignore create mode 100644 pom.xml create mode 100644 src/main/java/com/bwie/BwieApplication.java create mode 100644 src/main/java/com/bwie/controller/ScheduledController.java create mode 100644 src/main/java/com/bwie/service/ScheduledPrintNameService.java create mode 100644 src/main/java/com/bwie/service/impl/ScheduledPrintNameServiceImpl.java create mode 100644 理论/img.png diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3e403e3 --- /dev/null +++ b/.gitignore @@ -0,0 +1,35 @@ +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### Eclipse ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ + +### Mac OS ### +.DS_Store diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..60a13fc --- /dev/null +++ b/pom.xml @@ -0,0 +1,29 @@ + + + 4.0.0 + + com.bwie + day040rk + 1.0-SNAPSHOT + + + 17 + 17 + UTF-8 + + + org.springframework.boot + spring-boot-starter-parent + 3.2.6 + + + + + org.springframework.boot + spring-boot-starter-web + 3.2.6 + + + diff --git a/src/main/java/com/bwie/BwieApplication.java b/src/main/java/com/bwie/BwieApplication.java new file mode 100644 index 0000000..e05c489 --- /dev/null +++ b/src/main/java/com/bwie/BwieApplication.java @@ -0,0 +1,13 @@ +package com.bwie; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.scheduling.annotation.EnableScheduling; + +@SpringBootApplication +@EnableScheduling +public class BwieApplication { + public static void main(String[] args) { + SpringApplication.run(BwieApplication.class,args); + } +} diff --git a/src/main/java/com/bwie/controller/ScheduledController.java b/src/main/java/com/bwie/controller/ScheduledController.java new file mode 100644 index 0000000..9b9a3ae --- /dev/null +++ b/src/main/java/com/bwie/controller/ScheduledController.java @@ -0,0 +1,27 @@ +package com.bwie.controller; + + +import com.bwie.service.ScheduledPrintNameService; +import org.apache.logging.log4j.LogManager; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.web.bind.annotation.RestController; + +@RestController +public class ScheduledController { + + + + + + @Autowired + private ScheduledPrintNameService service; + /** + * 定时任务 + */ + @Scheduled(cron = "0/5 * * * * ?") + public void scheduledTest(){ + service.scheduled(); + } + +} diff --git a/src/main/java/com/bwie/service/ScheduledPrintNameService.java b/src/main/java/com/bwie/service/ScheduledPrintNameService.java new file mode 100644 index 0000000..d4f8d27 --- /dev/null +++ b/src/main/java/com/bwie/service/ScheduledPrintNameService.java @@ -0,0 +1,8 @@ +package com.bwie.service; + +public interface ScheduledPrintNameService { + /** + * 这是一个定时任务 + */ + void scheduled(); +} diff --git a/src/main/java/com/bwie/service/impl/ScheduledPrintNameServiceImpl.java b/src/main/java/com/bwie/service/impl/ScheduledPrintNameServiceImpl.java new file mode 100644 index 0000000..8561c14 --- /dev/null +++ b/src/main/java/com/bwie/service/impl/ScheduledPrintNameServiceImpl.java @@ -0,0 +1,16 @@ +package com.bwie.service.impl; + +import com.bwie.service.ScheduledPrintNameService; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.springframework.stereotype.Service; + + +@Service +public class ScheduledPrintNameServiceImpl implements ScheduledPrintNameService { + + @Override + public void scheduled() { + System.out.println("这是一个定时任务"); + } +} diff --git a/理论/img.png b/理论/img.png new file mode 100644 index 0000000000000000000000000000000000000000..bcef9d0d45e924fde1af85708a5daf9f6911f936 GIT binary patch literal 23017 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