Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 有没有办法在Spring Boot中缩短boolean RequestParams?_Java_Spring_Spring Boot - Fatal编程技术网

Java 有没有办法在Spring Boot中缩短boolean RequestParams?

Java 有没有办法在Spring Boot中缩短boolean RequestParams?,java,spring,spring-boot,Java,Spring,Spring Boot,谢谢大家的帮助:) 回溯信息: 我将SpringFramework版本2.4.3与Java(和Maven)一起使用 就我的问题: 是否可以缩短http://localhost:8080/api/v1/example?admin=true&superPrivilege=true到类似http://localhost:8080/api/v1/example?admin&superPrivilege 所以我想要的是使用布尔参数作为标志。 如果设置了该参数,则如果不设置为False,则该参数将计为tru

谢谢大家的帮助:)

回溯信息:
我将SpringFramework版本2.4.3与Java(和Maven)一起使用

就我的问题: 是否可以缩短
http://localhost:8080/api/v1/example?admin=true&superPrivilege=true
到类似
http://localhost:8080/api/v1/example?admin&superPrivilege

所以我想要的是使用布尔参数作为标志。
如果设置了该参数,则如果不设置为False,则该参数将计为true。这在弹簧靴中可能吗

实际上,我不知道用谷歌搜索什么,因为我对任何一种网络开发都是新手。

(杰普,我在过去几天里试了几个小时xD)

您可以使用
可选

@GetMapping
public ResponseEntitydataGet(@RequestParam(“admin”)可选管理员){
if(admin.isEmpty()){
//做任何事//没有管理员角色
}
否则{
//使用管理员角色执行任何操作
}
}

另外,如果您正在传递参数,如果没有任何值,则该参数将为空,以便您可以进行相应的检查。

另一种方法可能是:

@GetMapping(“/demo”)
公共字符串演示(@RequestParam映射参数){
if(parameters.containsKey(“key”)){
System.out.println(“我有钥匙”);
}
回复“你好”;
}

如果只是尝试一下,而不是在这里问“否”,会更快一些。@JimGarrison如下文所述,我做了很多goole,当然也尝试过,但没有得出有效的结论。这就是我来这里寻求帮助的原因。我来这里的时候,我被困在这里,我自己无法进一步了解lolOk,所以我尝试使用管理员参数和上面的可选参数完全一样,但isPresent是假的,直到我实际将布尔值传递给iTUpdate@DragonCoder added
Logical not(!)
操作符,这也将解决问题,但现在这是真的,即使我没有设置标志。我想要的是,没有参数意味着false和添加标志?管理员正在调试bool trueI,并注意到可选是可选的。如果我不添加参数或不向其传递任何值,则为空。如果将值传递给参数(感谢您尝试帮助:),则它将更改为可选的[true]/Optional[false],但问题是,我必须区分这两个可选的.Empty值。所以这种方法不起作用。我需要在传递now参数和传递一个(无值)之间做一个区别,这样就解决了这个问题。我知道这是存在的,但寻找了另一个选择,但耶工作得很好:)谢谢!
 @GetMapping
    public ResponseEntity<?>dataGet(@RequestParam("admin") Optional<Boolean> admin) {
        if(admin.isEmpty()) {
                  // Do anything //without admin role
            
        }
         else{
                // Do anything with admin role
                  }
}