Spring开启@Async异步方法(javaconfig配置)
2018-01-09 16:25
375 查看
在Spring中,基于@Async标注的方法,称之为异步方法;这些方法将在执行的时候,将会在独立的线程中被执行,调用者无需等待它的完成,即可继续其他的操作。
应用场景:
某些耗时较长的而用户不需要等待该方法的处理结果
某些耗时较长的方法,后面的程序不需要用到这个方法的处理结果时
代码
创建AsyncTask
创建spring配置AppConfig
测试
执行结果
从结果可以看出,异步任务测试成功
应用场景:
某些耗时较长的而用户不需要等待该方法的处理结果
某些耗时较长的方法,后面的程序不需要用到这个方法的处理结果时
代码
创建AsyncTask
/** * 异步任务 * * @author Peng */ public class AsyncTask { @Async public void doAsyncTask() throws InterruptedException { // 假设执行一个很耗时的任务 Thread.sleep(10 * 1000); System.out.println("执行完成,我执行了10秒"); } }
创建spring配置AppConfig
/** * spring 配置 * * @author Peng */ @Configuration @EnableAsync public class AppConfig { /** * 声明异步任务bean * * @return */ @Bean public AsyncTask asyncTask() { return new AsyncTask(); } }
测试
/** * 异步测试 * * @author Peng */ public class AppTest { public static void main(String[] args) throws InterruptedException { ApplicationContext ctx = new AnnotationConfigApplicationContext(AppConfig.class); AsyncTask task = ctx.getBean(AsyncTask.class); task.doAsyncTask(); System.out.println("异步任务调用成功,返回客户端执行成功,异步任务继续执行"); } }
执行结果
异步任务调用成功,返回客户端执行成功,异步任务继续执行 执行完成,我执行了10秒
从结果可以看出,异步任务测试成功
相关文章推荐
- Spring开启@Async异步方法(javaconfig配置)
- 使用反射创建Bean、Spring中是如何根据类名配置创建Bean实例、Java提供了Class类获取类别的字段和方法,包括构造方法
- Spring粘合iBatis时多种配置SqlMapConfig.xml路径的方法
- [java][spring]取得通过配置文件和注解注入的bean、取得当前数据库连接、取得ApplicationContext的方法
- 使用Spring @Async异步执行方法的笔记
- 使用Spring @Async异步执行方法的笔记
- spring 异步方法(@Async注解代替多线程 )
- Spring(三):使用java config配置spring mvc
- spring-boot @Async 的使用、自定义Executor的配置方法
- Java代码中获取配置文件(config.properties)中内容的两种方法
- 关于spring data redis使用javaConfig的基本配置
- spring声明式事务配置方法(六):aop:config切入
- Spring中@Async注解实现“方法”的异步调用
- 关于Spring中的<context:annotation-config/>配置(开启注解)
- Spring配置文件的三种方法(创建测试类Test.java)
- Spring异步任务处理,@Async的配置和使用
- java实现Spring在XML配置java类的方法
- [java][spring]取得通过配置文件和注解注入的bean、取得当前数据库连接、取得ApplicationContext的方法
- 使用Spring @Async异步执行方法的笔记
- 使用反射创建Bean、Spring中是如何根据类名配置创建Bean实例、Java提供了Class类获取类别的字段和方法,包括构造方法