当前位置: 首页 > 知识库问答 >
问题:

@requestparam值=Spring启动日期

谷梁子濯
2023-03-14
@Controller
@RequestMapping(value="/reservations")
public class ReservationController {
    private static final DateFormat DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd");

    @Autowired
    private ReservationService reservationService;

    @RequestMapping(method = RequestMethod.GET)
    public String getReservation(@RequestParam(value="date", required=false) String dateString, Model model){
        Date date = null;
        if(dateString != null){
            try {
                date = DATE_FORMAT.parse(dateString);
            } catch (ParseException pe) {
                date = new Date();
            }
        }else{
            date = new Date();
        }
        List<RoomReservation> roomReservationList = this.reservationService.getRoomReservationsForDate(date);
        model.addAttribute("roomReservations", roomReservationList);
        return "reservations";
    }
}

我知道@recestParam注释用于将查询字符串的参数值绑定到控制器方法参数。例如,http://localhost:8080/reservations?date=2017-01-01.然而,值=“日期”来自哪里?我没有看到任何值"日期"在我的html页面。

共有1个答案

谭思博
2023-03-14

如果您以方法"GET"(不是POST)提交表单,并且表单包含一个名为date的输入字段,那么提交此表单将命中此处理程序方法。

 类似资料:
  • 如何使用注释格式化传入的?表单以MM/DD/YYYY格式发送日期,而控制器没有将其作为有效的拾取。

  • 我注意到Spring在Spring 4.2中改变了RequestParam将参数封送到控制器endpoint的方式。也就是说,当我有这样的东西: 以前发送的超文本标记语言输入元素的属性为空,将作为空包含在列表中。在4.2中,它们是空字符串。' 例如: 结果为空列表。 结果是

  • 我正在使用一个Maven多模块,其中一场战争取决于另一场战争。 Spring Boot webapp依赖于只提供html文件的基本webapp。 当我运行SpringBoot应用程序时,我能够从主webapp(SpringBoot应用程序)访问服务和html,但是我不能从DependencyWar(404)访问html文件。但是这些html文件在SpringBootWebApp战争中得到了很好的打

  • 我在启动spring boot应用程序时遇到以下错误。这是我的第一个spring boot项目。因此,我不确定错误以及如何修复它。 申请启动失败 描述: 配置为侦听端口8080的Tomcat连接器无法启动。端口可能已在使用中,或者连接器可能配置错误。 行动: 验证连接器的配置,识别并停止在端口8080上侦听的任何进程,或者将此应用程序配置为在另一个端口上侦听。

  • 问题内容: 我有这个枚举: 我想用作rest请求的参数: 当我发送这些请求时,它工作正常 但是当我发送: /events?sort=somethingElse 我在控制台中收到500条响应和以下消息: 有没有一种方法可以防止spring抛出这些异常并将enum设置为null? 编辑 Strelok接受的答案有效。但是,我决定处理MethodArgumentTypeMismatchException

  • 问题内容: 我将Spring Framework用于我的服务API和日期时间解析。具体来说,我使用,它使用户可以灵活地仅使用日期,或者同时使用日期和时间,这是必需的。 相信我,我已经看到了所有这些我可以告诉人们的相关问题,例如this和this等等。 以前,我以日期为准,然后在服务层中使用上面提到的joda格式化程序处理日期,但是现在我想在控制器中添加请求验证,这意味着如果请求在语法上不正确,则该