我已阅读多篇帖子,尚未找到问题的答案。我有使用Spring 4的以下控制器。
由于我找到的例子,我已经收集了如何使用我的WellTest POJO通过@RequestParam自动绑定。我可以告诉你,很多时候“专家”在解释这些东西时,每天都很容易想到他们自己做的事情,而且我不是一个新手。但是,我并不是非常重视服务,而在Spring的情况下,有时你只使用上一版本的服务。我的大约2.5左右。
这是我的控制器方法 - 它只是用于测试变量的传递。
@RequestMapping(value = "/update/{WellTestID}", method = RequestMethod.POST,headers="Accept=application/json")
public String setWellTestByWellTestID( @RequestParam(defaultValue = "99999") Long wellTestID,
@RequestParam(defaultValue = "99999") Long wellFacilityID,
@RequestParam(defaultValue = "101") int operatorPersonID,
@RequestParam(defaultValue = "67845") int durationSeconds,
@RequestParam(defaultValue = "100") long grossRate,
@RequestParam(defaultValue = "400") long waterCut,
@RequestParam(defaultValue = "30") long percentGas,
@RequestParam(defaultValue = "500") long temperature,
@RequestParam(defaultValue = "60") long flowLinePressure,
@RequestParam(defaultValue = "50") long casingPressure,
@RequestParam(defaultValue = "0") int allocation,
@RequestParam(defaultValue = "3") int wellTestTypeID,
@RequestParam(defaultValue = "you") String createUser,
@RequestParam(defaultValue = "me-me") String lastModifiedUser,
@RequestParam(defaultValue = "4-4-2014") @DateTimeFormat(iso = DateTimeFormat.ISO.DATE) Date createDate,
WellTest wellTest) throws IOException
{
/* try {
wellTestService.updateWellTest(wellTest);
} catch (ParseException e) {
e.printStackTrace();
}*/
String param1 = new String(wellFacilityID.toString());
return param1;
}
该应用程序用于检索和编辑油井测试。我能够获取每个参数,除非我使用Date数据类型。我很肯定它与绑定中的转换有关,但是服务在调试器中甚至不会出错 - 错误告诉我请求在语法上不正确并且它永远不会到达请求方法。
错误是......
Blockquote
400 Bad Request Show explanation Loading time: 18
Request headers
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/37.0.2062.120 Safari/537.36
Origin: chrome-extension://hgmloofddffdnphfgcellkdfbfbjeloo
Content-Type: application/json
Accept: */*
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6
Response headers
X-Powered-By: Servlet/3.1 JSP/2.3 (GlassFish Server Open Source Edition 4.0 Java/Oracle Corporation/1.8)
Server: GlassFish Server Open Source Edition 4.0
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, GET, OPTIONS, DELETE
Access-Control-Max-Age: 3600
Access-Control-Allow-Headers: x-requested-with
Content-Language:
Content-Type: text/html
Date: Wed, 17 Sep 2014 21:29:47 GMT
Connection: close
Content-Length: 1105
我的问题很简单,如果您要发表评论或回答,请在两者中彻底解决。请假设我几乎什么都不知道,你就是那个可以解释它的人。
如何在Spring MVC中转换传递的参数数据类型?请解释做什么以及原因背后的概念。