Java 映射为Spring Boot中查询参数的值
我正在使用GET调用的查询参数模型Java 映射为Spring Boot中查询参数的值,java,spring,spring-boot,http,Java,Spring,Spring Boot,Http,我正在使用GET调用的查询参数模型 public class Model{ private Map<String, Object> myField; public Map<String, Object> getMyField(){ return this.myfield; } public void setMyField(Map<String, Object> myField){
public class Model{
private Map<String, Object> myField;
public Map<String, Object> getMyField(){
return this.myfield;
}
public void setMyField(Map<String, Object> myField){
this.myField = myField;
}
}
公共类模型{
私有地图myField;
公共映射getMyField(){
返回此.myfield;
}
公共void setMyField(映射myField){
this.myField=myField;
}
}
我的控制器是:
@RequestMapping(value="/view",method= RequestMethod.GET,produces={"application/json"})
@ResponseBody
public ResponseEntity<List<ViewResponse>> view(Model p_request) {}
@RequestMapping(value=“/view”,method=RequestMethod.GET,products={“application/json”})
@应答器
公共响应性视图(模型p_请求){}
这是我正在点击的请求http://localhost:8080/view?myField={“州”:“23”}
。我收到了错误的400个错误请求,而且
java.lang.IllegalArgumentException:在中找到无效字符
请求目标。有效字符在RFC 7230和RFC中定义
3986
我做错了什么 如果不迫切需要中级
Model
类,您可以将其去掉。您可以简单地使用Map
来映射所有输入请求参数,为此您需要使用spring mvc@RequestParam
注释,如
public ResponseEntity<List<Object>> view(@RequestParam Map p_request) {
}
public ResponseEntity视图(@RequestParam-Map p\u-request){
}
然后您不需要发送引用的http请求,请求将变成:
httplocalhost:8080/view\?states=23
如果不迫切需要中间模型
类,您可以将其去掉。您可以简单地使用Map
来映射所有输入请求参数,为此您需要使用spring mvc@RequestParam
注释,如
public ResponseEntity<List<Object>> view(@RequestParam Map p_request) {
}
public ResponseEntity视图(@RequestParam-Map p\u-request){
}
然后您不需要发送引用的http请求,请求将变成:
httplocalhost:8080/view\?states=23
所以我基本上需要一个filters类型的查询参数,在这里我可以在很多事情上应用过滤器。例如:filters={“states”:[active,inactive],“name”:[“ABXC”,“PQR”]}来解释为什么模型实际上还有其他查询参数。这是一个查询参数,其键是myField
,但值本身是一个mapok@sagarr,您也可以用于以下问题:public ResponseEntity视图(@RequestParam-Map p_-request){}:)任何特定的需要,您只需要将其作为json传递,我的意思是您可以使用逗号分隔的req参数,如states=a,b&name=x,y
所以我基本上需要一个filters类型的查询参数,在这里我可以对很多事情应用过滤器。例如:filters={“states”:[active,inactive],“name”:[“ABXC”,“PQR”]}来解释为什么模型实际上还有其他查询参数。这是一个查询参数,其键是myField
,但值本身是一个mapok@sagarr,您也可以用于以下问题:public ResponseEntity视图(@RequestParam-Map p_-request){}:)任何特定的需要,您只需要将其作为json传递,我的意思是您可以使用逗号分隔的req参数,如states=a,b&name=x,y
将对象作为查询参数传递,然后在控制器中解析该对象。将对象作为查询参数传递,然后在控制器中解析该对象。