【发布时间】:2019-06-25 09:43:53
【问题描述】:
我将一个 Spring 4.1 应用程序(运行 I JBoss)迁移到 SpringBoot 1.5(Spring 4.3.7),之后,我们所有带有字符串参数的 MVC 控制器在调用时总是收到空值。
获得参数值集的唯一方法是用 StringBuilder 替换 String。
一个例子,不再工作了:
@RequestMapping(value = "/updateTime", method = RequestMethod.POST)
public String updateTime(@RequestParam(value="time") String time) {
// time is null in SpringBoot
}
工作(StringBuffer 代替 String:
@RequestMapping(value = "/updateTime", method = RequestMethod.POST)
public String updateTime(@RequestParam(value="time") StringBuffer time) {
// time has expected value
}
HTML:
<form name="updateTime" action="updateTime.html" method="post">
Time: <input type="text" name="time" placeholder="YYYY-MM-DD HH:mm" value="${time}"/> <br/>
<input type="submit" name="action" value=" Update "/>
</form>
即使控制器中的字符串参数复合到请求对象中,我也会得到这种行为。
我在这里做错了吗?
【问题讨论】:
-
为什么不选择 SpringBoot 1.5 以外的版本。 ?
-
@LahiruWijesekara:会的,采取中等步骤来避免 spring-security 和 ws-security 出现太多问题
标签: java spring-boot spring-mvc controller