java web spring异步方法

在项目中,时常会有异步调用的需求

web.xml配置

<servlet>
    <description>spring mvc servlet</description>
    <servlet-name>springMvc</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
      <description>spring mvc 配置文件</description>
      <param-name>contextConfigLocation</param-name>
      <param-value>classpath:spring-mvc.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
    <async-supported>true</async-supported>
  </servlet>
  <servlet-mapping>
    <servlet-name>springMvc</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>

添加:<async-supported>true</async-supported>

spring  xml添加配置:

    <!-- 支持异步方法执行 -->
    <task:executor id="myExecutor" pool-size="10"  />
    <task:annotation-driven executor="myExecutor"/>

然后demo:

@Service
@EnableAsync
public class DevicesEditLogService {

    @Async
    public void recordEditLog(Map<String, Object> param) {
        
    }

}

类上添加@EnableAsync, 方法上添加@Async, 

添加@Service, 其他类可以注入这个实例,并调用成员方法

猜你喜欢

转载自www.cnblogs.com/chenmz1995/p/12016007.html