рдпрд╣рд╛рдБ рдпрд╣ рдореБрдЭ рдкрд░ рдЕрд╕рдВрдЧрдд рдерд╛ рдХрд┐ рд╕рдордп-рд╕рдордп рдкрд░ рд╕реНрдкреНрд░рд┐рдВрдЧ рдлреНрд░реЗрдорд╡рд░реНрдХ рдореЗрдВ рд▓рд┐рдЦреЗ рдПрдХ рдЫреЛрдЯреЗ рд╕реЗ рдкреНрд░рдХреНрд╖реЗрдкрдг рдореЗрдВ рдХреБрдЫ рдХреЛрдб рдЪрд▓рд╛рдКрдВред рдореИрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкреБрд░рд╛рдиреА рдореЗрдореЛрд░реА рд╕реЗ рддреИрдпрд╛рд░ рдерд╛ (рд╡рд╕рдВрдд 2.x рдХреЗ рдмрд╛рдж рд╕реЗ) рдХреНрд╡рд╛рд░реНрдЯреНрдЬ рдХреЗ рд▓рдВрдмреЗ рдкреЗрдВрдЪ рдХреЗ рд▓рд┐рдП рдФрд░ xml рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдирд┐рдХрд▓рд╛ рд╕рдм рдХреБрдЫ рдмрд╣реБрдд рд╕рд░рд▓ рдерд╛
рд╕реНрдкреНрд░рд┐рдВрдЧ рдлреНрд░реЗрдорд╡рд░реНрдХ рдкреНрд░рд▓реЗрдЦрди рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣ рдПрдХ рд╕рдВрдкреВрд░реНрдг рд╣реИ, рд▓реЗрдХрд┐рди рдХрднреА-рдХрднреА рдирд┐рд░рд░реНрдердХ рдЙрддреНрддрд░ рджреЗрддрд╛ рд╣реИ
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рд╣реИ:
1. рдЗрд╕реЗ рдПрдХ рдмрд╛рд░ рдХрд░реЗрдВ - рдЗрд╕реЗ рдЕрдкрдиреЗ рд╕реНрдкреНрд░рд┐рдВрдЧ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ (рдХрд┐рд╕реА рднреА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдиреНрдпреВрдирддрдо рдПрдХ рдореМрдЬреВрдж рд╣реИ - рдпрд╣ рдЕрднреА рднреА рдПрдиреЛрдЯреЗрд╢рди рдХреЗ рд╕рд╛рде рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ) рдХрд╛рд░реНрдп рдирд╛рдорд╕реНрдерд╛рди, рдЬреЛ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ (рд╢рдмреНрдж рдХрд╛рд░реНрдп рдХреЛ рдиреЛрдЯ рдХрд░реЗрдВ):
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
xmlns:tx="http://www.springframework.org/schema/tx" xmlns:task="http://www.springframework.org/schema/task"
xsi:schemaLocation="
www.springframework.org/schema/beans www.springframework.org/schema/beans/spring-beans.xsd
www.springframework.org/schema/context www.springframework.org/schema/context/spring-context.xsd
www.springframework.org/schema/tx www.springframework.org/schema/tx/spring-tx.xsd
www.springframework.org/schema/task www.springframework.org/schema/task/spring-task.xsd">
2. рджреЛ - рдПрдХ рд╣реА рд╕реНрдерд╛рди рдкрд░ рдЕрдиреБрд╕реВрдЪрдХ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ:
<task:annotation-driven executor="executor" scheduler="scheduler"/>
<task:executor id="executor" pool-size="5"/>
<task:scheduler id="scheduler" pool-size="10"/>
3. рддреАрди рдХрд░реЗрдВ - рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреБрдЫ рд╕реЗрдо рдХреА рд╡рд┐рдзрд┐ рдкрд░ @ рд╢реЗрдбреНрдпреВрд▓реНрдб рдПрдиреЛрдЯреЗрд╢рди рдбрд╛рд▓реЗрдВ:
@ рддрдп (рдирд┐рд╢реНрдЪрд┐рдд рдЕрд╡рдзрд┐ = 5000)
рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╢реВрдиреНрдп doSething () {
// рд╣рд░ 5 рд╕реЗрдХрдВрдб рдореЗрдВ рдХреБрдЫ рдХрд░реЗрдВ
}
рд╡рд╣ рд╕рдм рд╣реИ! рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рдореБрдЭреЗ рд╡рд╕рдВрдд рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдкреНрдпрд╛рд░ рдкрд░ рдпрдХреАрди рд╣реЛ рдЧрдпрд╛ - рдЬрдм рддрдХрдиреАрдХ рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХреА рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ