Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.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 是否根据请求url自动选择viewResolver?_Java_Json_Spring_Model View Controller_Jackson - Fatal编程技术网

Java 是否根据请求url自动选择viewResolver?

Java 是否根据请求url自动选择viewResolver?,java,json,spring,model-view-controller,jackson,Java,Json,Spring,Model View Controller,Jackson,我希望能够编写一个方法,返回一个对象,将该方法映射到一个请求,并根据url更改对象的格式。因此,如果我有一个为/clients返回的客户机对象数组,那么默认情况下,我希望将该对象解析为velocity模板(clients.vm)来处理格式化。但是,如果url是/clients.json,那么我希望将对象传递回响应体,让消息转换器知道如何处理它 所以,我的问题是,如何配置Spring,以及如何编写控制器 Thx在处理程序方法中使用路径变量,使用该变量切换要使用的视图: @RequestMappin

我希望能够编写一个方法,返回一个对象,将该方法映射到一个请求,并根据url更改对象的格式。因此,如果我有一个为
/clients
返回的客户机对象数组,那么默认情况下,我希望将该对象解析为velocity模板(clients.vm)来处理格式化。但是,如果url是
/clients.json
,那么我希望将对象传递回响应体,让消息转换器知道如何处理它

所以,我的问题是,如何配置Spring,以及如何编写控制器


Thx

在处理程序方法中使用
路径变量
,使用该变量切换要使用的视图:

@RequestMapping("/myapp/{viewtype}/view.do")
public String myHandler(
      @PathVariable String viewtype,
      Model model) {
  // do stuff
  return "viewname." + viewtype;
}

视图类型可以是
vm
,或者
jsp
,或者其他任何类型。如果返回类型简单地更改为
@ResponseBody
,并且类路径上有Jackson JAR,它也可以返回JSON。

在处理程序方法中使用
路径变量
,使用该变量切换要使用的视图:

@RequestMapping("/myapp/{viewtype}/view.do")
public String myHandler(
      @PathVariable String viewtype,
      Model model) {
  // do stuff
  return "viewname." + viewtype;
}
视图类型可以是
vm
,或者
jsp
,或者其他任何类型。如果返回类型简单地更改为
@ResponseBody
,并且类路径上有Jackson JAR,那么它也可以返回JSON