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
Java 如何使用SpringMVC将参数(标识对象的primery键)从视图传递到控制器?_Java_Spring_Spring Mvc_Jakarta Ee - Fatal编程技术网

Java 如何使用SpringMVC将参数(标识对象的primery键)从视图传递到控制器?

Java 如何使用SpringMVC将参数(标识对象的primery键)从视图传递到控制器?,java,spring,spring-mvc,jakarta-ee,Java,Spring,Spring Mvc,Jakarta Ee,我是SpringMVC的新手,我对如何正确地将链接创建到视图页面(必须由控制器类中定义的方法处理)有以下疑问 因此,我有以下情况: 在视图中,我使用模型对象名称 <c:forEach items="${scuola.twp1007Progettos}" var="progetto" varStatus="itemProgetto"> <!-- Visualizza il progetto solo se è un progetto PNSD: --> &

我是SpringMVC的新手,我对如何正确地将链接创建到视图页面(必须由控制器类中定义的方法处理)有以下疑问

因此,我有以下情况:

在视图中,我使用模型对象名称

<c:forEach items="${scuola.twp1007Progettos}" var="progetto" varStatus="itemProgetto">

    <!-- Visualizza il progetto solo se è un progetto PNSD: -->
    <c:if test="${progetto.flgTipPrg == 'P'}">
        <div class="group-item">
            <a href="visualizzaProspetto">
                <img src="<c:url value="resources/img/icons/projects/PNSD.png" />">
            </a>

            <div>
                <h4><a href="visualizzaProspetto">${progetto.codPro}</a></h4>
                <p>${progetto.twp1009Tipostaprogetto.desTipSta}</p>

            </div>
        </div>
    </c:if>

</c:forEach>
好的,这是正确的名称

现在我的问题是,当用户单击链接时,我不必处理简单的VisualizaProsPeto,但我还必须传递一个参数,该参数表示prgPro字段的值,该字段定义在我的Twp1007Progetto模型对象实例中(${progetto.prgPro}value),因为它是数据库中单击对象的主键

那么,做这件事的最佳方式是什么?我知道使用Spring可以传递参数或路径变量,但我真的不知道如何正确处理这种情况


带有请求参数的Tnx


codPro
值,取决于它是否可以包含保留字符。

Ok tnx,您认为什么是用于此目的的最佳解决方案?请求参数还是路径变量?@AndreaNobili这完全取决于您,我不确定是否有最佳解决方案。在这种情况下,我可能会选择请求参数,因为路径变量通常与技术标识符一起使用
<a href="visualizzaProspetto">
@RequestMapping(value = "/visualizzaProspetto", method = RequestMethod.GET)
public String home(Locale locale, Model model) {
    .....................................................
    .....................................................
    DO SOMETHING
    .....................................................
    .....................................................

    return "prospettoRendicontazione";
}