服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - Java web spring异步方法实现步骤解析

Java web spring异步方法实现步骤解析

2020-08-06 13:54护花使者 Java教程

这篇文章主要介绍了Java web spring异步方法实现步骤解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

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

web.xml配置

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<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添加配置:

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

然后demo:

?
1
2
3
4
5
6
7
@Service
@EnableAsync
public class DevicesEditLogService {
  @Async
  public void recordEditLog(Map<String, Object> param) {
  }
}

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

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

注:有了解到,如果@Async修饰的方法和调用此方法的其他方法在同一个类中,不会生效

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://www.cnblogs.com/chenmz1995/p/12016007.html

延伸 · 阅读

精彩推荐