gpt4 book ai didi

regex - 如何在 RequestMapping 中使用 SPEL 和正则表达式

转载 作者:行者123 更新时间:2023-12-04 00:53:48 25 4
gpt4 key购买 nike

我有一个 Controller 方法如下

@RequestMapping(value = "/{fruitName:Mango|Orange|Grapes}", method = RequestMethod.GET)
public String viewFruit(ModelMap model, @PathVariable String fruitName) {
...
}

这里我对 Mango、Orange 和 Grapes 进行了硬编码,这样如果 url 与其中任何一个匹配,则只应执行此方法。

我想做的是,而不是在这里对这些水果进行硬编码。我想在属性文件中声明它们并通过使用 SPEL,我应该把它带到这里。

这可能吗?

我为此尝试了下面的代码,但因错误而失败:

@RequestMapping(value = "/{fruitName:#{fruit['seasonFruit.requestMapping']}}", method = RequestMethod.GET)
public String viewFruit(ModelMap model, @PathVariable String fruitName) {
...
}

对于以下属性文件(fruit.properties)

seasonFruit.requestMapping = Mango|Orange|Grapes

请建议,这是如何实现的?

最佳答案

@ArtemBilan So, isn't there any way by which we could achieve this? By separation of hard coding

好吧,我希望你能通过代码做到这一点:

@Value("#{ environment['seasonFruit.requestMapping'] }")
private String fruitName;

@RequestMapping(value = "/{fruitName:[a-z]", method = RequestMethod.GET)
public String viewFruit(ModelMap model, @PathVariable String fruitName) {
if (fruitName.matches(this.fruitName))
}

关于regex - 如何在 RequestMapping 中使用 SPEL 和正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29427375/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com