Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/353.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.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 Spring:将带有数据的对象从控制器传递到jsp,并从springformsubmit获取预先保存的数据_Java_Spring_Forms_Jsp_Spring Mvc - Fatal编程技术网

Java Spring:将带有数据的对象从控制器传递到jsp,并从springformsubmit获取预先保存的数据

Java Spring:将带有数据的对象从控制器传递到jsp,并从springformsubmit获取预先保存的数据,java,spring,forms,jsp,spring-mvc,Java,Spring,Forms,Jsp,Spring Mvc,我很抱歉,如果标题听起来令人困惑,我是一个春季新手 我有一个名为AdController的控制器类,我在ModelAndView中将一个Ad对象传递给jsp: ModelAndView laView = new ModelAndView("/ad/adAdd3"); Ad laAd = new Ad(); laAd.setPrice(100); model.put("ad", laAd); 在我的adCreate.jsp中,我允许用户添加关于这个广告的更多信息,

我很抱歉,如果标题听起来令人困惑,我是一个春季新手

我有一个名为AdController的控制器类,我在ModelAndView中将一个Ad对象传递给jsp:

    ModelAndView laView = new ModelAndView("/ad/adAdd3");
    Ad laAd = new Ad();
    laAd.setPrice(100);
    model.put("ad", laAd);
在我的adCreate.jsp中,我允许用户添加关于这个广告的更多信息,除了价格。并使用将Ad对象提交到后端my Controller类:

 <form:form modelAttribute="ad" method="post" class="form-horizontal" id="add-ad-form">

问题是,在后端,除了价格,我收到了用户添加的所有内容。我应该从提交的表格中获取价格数据吗?我遗漏了什么吗


谢谢

Spring MVC是无状态的,因此在控制器中,您只能从客户端接收到发送的内容。您需要在表单中包含
价格
,以便将其发送到服务器(您可以隐藏该字段,以防止用户更改它)。但是,这不会阻止用户手动发送包含所有其他数据的价格(只需稍微更改html代码),因此您也需要在服务器端处理此问题。

Spring MVC根据请求中的参数创建广告对象的新实例。因此,如果price值在生成的表单中没有HTML输入,那么该值将不会在这个新实例中填充

您可以使用
标记将值从表单传回

如果查看HTML页面的源代码,您应该会看到这会将
添加到页面中