编程语言
首页 > 编程语言> > Spring MVC处理程序返回后调用另一个方法

Spring MVC处理程序返回后调用另一个方法

作者:互联网

我有一个要求,我需要从rest控制器返回一些状态/长值,然后执行代码以发送推送通知.

@RequestMapping(value="/create")
public String createTicket() throws InterruptedException {
    // code to create ticket
    return "ticket created";
    // need to call sendPushNotifiction() after I return status
}

    public void sendPushNotifiction() throws InterruptedException {
    // code to send push notification
    System.out.println("Sent push notification successfully!!");    
}

有人可以告诉我如何实现吗?是否可以为此使用Spring AOP?我认为线程不能保证仅在返回后才执行sendPushNotifiction方法.那么有效实现这一目标的方法是什么?
提前致谢

解决方法:

我认为这可能是异步处理的好用例.春天有good support.准确地说,您需要

>使用@Async注释sendPushNotifiction.
>使用@EnableAsync注释一些配置类.
>在return语句之前调用sendPushNotifiction().执行流程将不等待sendPushNotifiction完成.

如果不起作用,请尝试在单独的服务中编码sendPushNotifiction.

标签:spring-aop,spring,spring-mvc
来源: https://codeday.me/bug/20191119/2037189.html