วันจันทร์ที่ 16 พฤศจิกายน พ.ศ. 2558

Spring Batch TaskScheduler โดย Spring boot

       

       Spring Batch TaskScheduler  มีหน้าที่ทำให้การกระทำอย่างใดอย่างหนึ่งสั่งให้ทำงาน ณ ช่วงเวลาที่เรากำหนดได้ ไม่ว่าจะทำทุกๆ 5 นาที  ทำทุกๆ เทียงคืนของวันนั้นก้ได้ตามสบายใจที่กำหนดได้เลย หรือซึงโปรแกรมเมอร์ส่วนใหญ่คุ้นเคยกันดีนั้น คือ  Run batch file  ตามเวลาที่กำหนดนั้นเอง   โดยหลักการทำงานของเจ้าตัว TashkScheduler  อยู่ในรูแบบของ Thread (เทรด)  ซึงมันจะสแกนมีช่วง Thread นั้นๆ มันก้ทำงาน


โครงสร้างไฟล์โปรแกรม



ไฟล์ pom.xml  เพิ่ม dependencies  ดังนี้


 
  
   org.springframework.boot
   spring-boot-starter-batch
  
  
   org.springframework.boot
   spring-boot-starter-web
  
  
   org.springframework.boot
   spring-boot-starter-tomcat
   provided
  
  
   org.springframework.boot
   spring-boot-starter-test
   test
  
 

 
 - เพิ่ม annotation  @ComponentScan  เพื่อ scan package
 - เพิ่ม annotation  @EnableSchecduling   เพื่อเปิดใช้งาน Schecduling

















- เพิ่ม class  พร้อมกำหนด @Component เพื่อให้ spring รู้จักว่าเป็น componet class
- เพิ่ม  @Scheduled  บน method  พร้อมกำหนดค่า delay ในละช่วงเวลา ในตัวอย่างคือ 5 วินาที



เมื่อรันเสร็จก้จะได้ผลลัพธ์ออก log ดังนี้








ง่ายไหมละครับ ซึ่งตัวอย่างทำขึ้นแบบง่ายๆสามารถนำไปต่อยอดได้กันเลยทีเดียว  นะฮะ


ไม่มีความคิดเห็น:

แสดงความคิดเห็น