【问题标题】:Spring boot and validation of param in url春季启动和验证url中的参数
【发布时间】:2017-03-04 22:06:40
【问题描述】:

@RequestParam(value = "param") 字符串参数

如何以优雅的方式验证这个参数?更确切地说,我必须检查 param 是否是数据库中的某个值。我的堆栈是:spring-boot+mybatis

【问题讨论】:

  • 有多少个值?它们是动态的吗?
  • @Bohemian 动态是什么意思?有三个值,但我只想验证这个。
  • @JavaNewbie “动态”意味着它们发生了变化,即在编译时未知。如果它们在数据库中,您必须使用它还是使用硬编码值可以?如果这些值是已知列表,那么这些值是什么?
  • @Bohemian 值是列的名称。我怕它会被改变,所以我会被逼更新这个列表。我必须检查参数是否是有效的 columnName 以防止 SQL 注入 - 它是 ORDER BY ? 的参数(我正在使用 mybatis)。

标签: java validation spring-boot mybatis


【解决方案1】:

这可能是 that one 的副本,但无论如何。

验证表单和单独参数的方式有所不同。使用 POST 实际上不可能将请求分解为单独的参数并获得整个帖子正文,然后使用 @Valid 来处理它。使用 GET 可以在方法中使用单独的参数作为参数,在这种情况下,应使用 Spring 专有的 @Validated 注解。

【讨论】:

  • 好的,但是如何在我的使用案例中使用这个注释呢?
猜你喜欢
  • 1970-01-01
  • 2018-09-04
  • 2018-07-04
  • 2016-03-24
  • 2022-10-19
  • 2017-10-06
  • 2021-05-06
  • 2014-08-05
  • 1970-01-01
相关资源
最近更新 更多