Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用SpringBootAsync在不重新加载页面的情况下提交表单?_Java_Jquery_Ajax_Spring Boot_Asynchronous - Fatal编程技术网

Java 如何使用SpringBootAsync在不重新加载页面的情况下提交表单?

Java 如何使用SpringBootAsync在不重新加载页面的情况下提交表单?,java,jquery,ajax,spring-boot,asynchronous,Java,Jquery,Ajax,Spring Boot,Asynchronous,在提交表单并通过JQuery传递表单时,我可以使用Ajax实现。 我想知道是否有其他方法可以使用Spring Boot@Async 这是我到目前为止的代码,您可以看到Post请求仍然返回一个新的ModelAndView页面 @GetMapping("/register") public @Valid ModelAndView forPageScreen(@ModelAttribute("user") User user) { ModelAndView users = new Mod

在提交表单并通过JQuery传递表单时,我可以使用Ajax实现。 我想知道是否有其他方法可以使用Spring Boot@Async

这是我到目前为止的代码,您可以看到Post请求仍然返回一个新的ModelAndView页面

@GetMapping("/register")
public @Valid ModelAndView forPageScreen(@ModelAttribute("user") User user)
{   
    ModelAndView users = new ModelAndView("Practice");
    return users;
}


@Async
@Transactional
@PostMapping("/register")
public @Valid CompletableFuture<ModelAndView> addUser(@Valid @ModelAttribute("user") User user)
{
    ModelAndView mav = new ModelAndView("Practice");

    try {
        Thread.sleep(5000);
        userRep.save(user);

    } catch (InterruptedException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    return CompletableFuture.completedFuture(mav);
}
@GetMapping(“/register”)
public@Valid ModelAndView for pagescreen(@modeldattribute(“用户”)用户)
{   
ModelAndView用户=新ModelAndView(“实践”);
返回用户;
}
@异步的
@交易的
@后映射(“/寄存器”)
public@Valid CompletableFuture addUser(@Valid@modeldattribute(“user”)user)
{
ModelAndView mav=新ModelAndView(“实践”);
试一试{
睡眠(5000);
userRep.save(用户);
}捕捉(中断异常e){
//TODO自动生成的捕捉块
e、 printStackTrace();
}
返回CompletableFuture.completedFuture(mav);
}

@Async
用于服务器端异步,而不是AJAX。这是完全不同的用例

在提交表单并传递表单时,我可以使用Ajax实现 JQuery


这就是路。异步应该在客户端处理(本例中为JQuery)。就服务器而言,httpRequest(在本场景中)没有任何异步功能。

您是说希望自动重新加载页面吗?如果是这样的话,您已经将jquery放在了标记中,这样您就可以使用setinterval调用调用ajax调用的函数。不要对试图帮助您的人无礼。这不是很酷,这是对网站的。嗨,我不想冒犯任何特别想帮助我的人。老实说,我很感激,只是英语不是我的母语,所以如果我粗鲁无礼或听起来鲁莽,我并不完全熟悉。如果我对任何人说了任何刺耳的话,我对此感到非常抱歉。谢谢你的回答。毕竟,我将继续使用AJAX。你能给我一个在服务器端使用@Async的场景吗?@Async用法示例:假设你想进行两个耗时的SQL查询,你可以并行地启动两个查询(而不是等待一个查询完成后再启动另一个查询)。谢谢你向我解释。我真的认为
@Async
也可以处理客户端,因为它是异步的。很明显,我错了,非常感谢你。我已经在这方面工作了好几天,试图弄清楚
@Async
是否能胜任这项工作。很乐意帮忙。谢谢你让我知道。