Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.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
Spring 在每个请求上从DB设置JSP列表框内容_Spring_Jsp_Spring Mvc - Fatal编程技术网

Spring 在每个请求上从DB设置JSP列表框内容

Spring 在每个请求上从DB设置JSP列表框内容,spring,jsp,spring-mvc,Spring,Jsp,Spring Mvc,我有一个JSP,它在一个控制器中为多个方法提供服务——它是添加、编辑、删除等操作的结果。它甚至可以为多个控制器提供服务,因此在很多地方都使用它 这个JSP总是有一个列表框显示一组记录。因此,每次显示此JSP时,我都需要重新获取每个请求的列表 一方面,我可以做request.setAttribute(“contents”, service.getForms())然后检索此请求。属性,但这已经发生了 要在使用JSP的每个方法上完成。可能有几十个,, 这是多余的 无法使用会话对象,列表可能会因某些原

我有一个JSP,它在一个控制器中为多个方法提供服务——它是添加、编辑、删除等操作的结果。它甚至可以为多个控制器提供服务,因此在很多地方都使用它

这个JSP总是有一个列表框显示一组记录。因此,每次显示此JSP时,我都需要重新获取每个请求的列表

  • 一方面,我可以做
    request.setAttribute(“contents”,
    service.getForms())
    然后检索此请求。属性,但这已经发生了 要在使用JSP的每个方法上完成。可能有几十个,, 这是多余的

  • 无法使用会话对象,列表可能会因某些原因而更改
    添加/删除操作,因此需要重新获取

  • 我想到的是Scriptlet:在这种情况下,虽然 不明智的是,只有一个JSP,因此可以填充列表框 在JSP级别,无需担心控制器。但是 不幸的是,我不能这样做:

我的服务是自动连线的。根据这个线程,我不能向JSP公开自动连线对象:


最好的方法是什么?

在控制器中创建一个新方法来获取数据,当页面加载时,使用ajax调用来调用新方法并检索数据并填充框,有什么错呢?这正是我所做的。onReady中现在有一个来自JSP的AJAX调用,它不依赖于任何请求属性,并且始终具有列表。
@Autowired
@Qualifier("Myervice")
private MyService service;