国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - 關于spring中定時器的使用教程

關于spring中定時器的使用教程

2020-11-23 13:08阿木俠 Java教程

大家應該都有所體會,在很多實際的web應用中,都有需要定時實現的服務,下面這篇文章主要給大家介紹了關于spring中定時器的使用教程,對大家具有一定的參考學習價值,需要的朋友們下面來一起看看吧。

前言

在很多實際的web應用中,都有需要定時實現的服務,如每天12點推送個新聞,每隔一個小時提醒用戶休息一下眼睛,隔一段時間檢測用戶是否離線等等。

spring框架提供了對定時器的支持,通過配置文件就可以很好的實現定時器,只需要應用啟動,就自動啟動定時器。下面介紹一下具體做法。

第一種,使用XML配置的方法

前期工作,配置spring的開發環境(這里用到了spring的web應用包,需要導入)

首先創建定時器的任務類,定時器要做什么工作,就在這里寫什么方法。

?
1
2
3
4
5
6
7
8
9
10
11
12
package org.time;
 
import java.util.TimerTask;
 
public class MainTask extends TimerTask{
 
 @Override
 public void run() {
  System.out.println("檢測用戶是否掉線");
 }
 
}

接著在配置文件中對定時器進行配置。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?xml version="1.0" encoding="UTF-8"?>
<beans
 xmlns="http://www.springframework.org/schema/beans"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:p="http://www.springframework.org/schema/p"
 xsi:schemaLocation="http://www.springframework.org/schema/beans
 http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
  
 <bean id="mainTask" class="org.time.MainTask"></bean>
 
 <!-- 注冊定時器信息 -->
 <bean id="springTask" class="org.springframework.scheduling.timer.ScheduledTimerTask">
  <!-- 延遲1秒執行首次任務 -->
  <property name="delay" value="1000"></property>
  <!-- 每隔2秒執行一次任務 -->
  <property name="period" value="2000"></property>
  <!-- 具體執行的任務 -->
  <property name="timerTask" ref="mainTask"></property>
 </bean>
 <!-- 配置任務調度器工廠 -->
 <bean id="timerFactory" class="org.springframework.scheduling.timer.TimerFactoryBean">
  <property name="scheduledTimerTasks">
   <list>
    <ref bean="springTask"/>
   </list>
  </property>
 </bean>
</beans>

最后還需要在web.xml中對配置信息進行注冊:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
 xmlns="http://java.sun.com/xml/ns/javaee"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
 http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
 <display-name></display-name>
 <welcome-file-list>
 <welcome-file>index.jsp</welcome-file>
 </welcome-file-list>
 <listener>
 <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
 </listener>
 <context-param>
 <param-name>contextConfigLocation</param-name>
 <param-value>/WEB-INF/applicationContext.xml</param-value>
 </context-param>
</web-app>

這樣就完成了定時器的配置,這時啟動tomcat,觀察控制臺輸出的結果:

關于spring中定時器的使用教程

第二種,使用注解的形式

(spring中一使用注解,感覺就是比其他方法方便了很多,代碼減少了很多)

這里需要用到AOP,需要引入AOP類庫

先看定時器的任務類:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
package org.time;
 
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
 
@Component
public class MainTask01{
 @Scheduled(cron = "0/3 * * * * ?")
 public void run() {
  System.out.println("推送消息來了");
 }
 
}

@Scheduled(cron = "0/3 * * * * ?")  表示三秒推送一次

corn可以配置各種時段任務:

 

字段

                   值

特殊表示字符

   一般為空,1970-2099

   , - * /

    1-12 或者 JAN-DEC

   , - * /

星期

    1-7 或者 SUN-SAT

   , - * ? / L C #

    1-31

    , - * ? / L W C

    0-23 

    , - * /

    0-59 

    , - * /

    0-59 

    , - * /


 

 

如:  配置每個工作日的10:20觸發 :"0 20 10 ? * MON-FRI" 

配置文件:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:tx="http://www.springframework.org/schema/tx"
 xmlns:aop="http://www.springframework.org/schema/aop"
 xmlns:context="http://www.springframework.org/schema/context"
 xmlns:task="http://www.springframework.org/schema/task"
 xmlns="http://www.springframework.org/schema/beans"
 xsi:schemaLocation="http://www.springframework.org/schema/beans
  http://www.springframework.org/schema/beans/spring-beans.xsd
  http://www.springframework.org/schema/tx
  http://www.springframework.org/schema/tx/spring-tx.xsd
  http://www.springframework.org/schema/aop
  http://www.springframework.org/schema/aop/spring-aop.xsd
  http://www.springframework.org/schema/context
  http://www.springframework.org/schema/context/spring-context.xsd
  http://www.springframework.org/schema/task
  http://www.springframework.org/schema/task/spring-task.xsd">
 
 <context:annotation-config />
 <!-- spring掃描注解的配置 -->
 <context:component-scan base-package="org.time" />
  
 <task:annotation-driven scheduler="qbScheduler" mode="proxy"/>
 <task:scheduler id="qbScheduler" pool-size="10"/>
 
</beans>

配置文件的頭部信息中比上一個引入了

?
1
2
3
xmlns:task="http://www.springframework.org/schema/task"
http://www.springframework.org/schema/task
http://www.springframework.org/schema/task/spring-task.xsd

<task:annotation-driven scheduler="qbScheduler" mode="proxy"/>

<task:scheduler id="qbScheduler" pool-size="10"/>

這兩句配置信息是必須要寫的,這是spring識別@Scheduled注解的關鍵

這這樣簡單的幾句配置之后,開啟服務,運行結果:

關于spring中定時器的使用教程

spring中使用注解的方法完成定時器,不需要集成其他父類定時器,使用簡單方便!代碼量少,功能也很強大!

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對服務器之家的支持。

原文鏈接:http://blog.csdn.net/weixin_36380516/article/details/72596834

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 国产日韩在线视频 | 蜜桃一区 | 黄色av免费在线观看 | 色接久久| 国产精品一区二区av | 91精品久久久久久久久久入口 | 精品一区欧美 | 午夜爱爱毛片xxxx视频免费看 | 欧美日韩在线电影 | 99久久国 | 欧美一区亚洲二区 | 成人在线播放网站 | 国产精品久久久久久吹潮 | 日韩精品1区2区3区 国产日韩在线视频 | 国产美女自拍视频 | 久久亚洲一区 | 国内自拍视频在线观看 | 久久综合成人精品亚洲另类欧美 | 成人免费视频网站在线看 | 国产欧美日韩在线观看 | 成a人片在线观看 | 国产三级一区二区 | 免费人成黄页网站在线一区二区 | 黄色av免费在线 | 激情网站免费观看 | 午夜影院网站 | 精品久久中文字幕 | 国产精品成人一区二区三区 | 丁香婷婷综合激情五月色 | 透逼视频 | 欧美 日韩| 亚洲国产精品久久久久婷婷老年 | 亚洲精品国产第一综合99久久 | 黄视频免费观看 | 国产高清自拍 | 亚洲视频区 | 中文字幕一区在线观看视频 | 欧美日韩在线一区二区三区 | 久久精品综合 | 国产 日韩 一区 | 在线精品亚洲欧美日韩国产 |