谁在Spring4REST控制器中执行ViewResolver的工作&;谁应要求提供意见?
简单控制器&平铺视图解析器=>它可以工作谁在Spring4REST控制器中执行ViewResolver的工作&;谁应要求提供意见?,rest,spring-mvc,spring-restcontroller,Rest,Spring Mvc,Spring Restcontroller,简单控制器&平铺视图解析器=>它可以工作 /** * For Exple: * Spring Controller * & Tiles View Resolver * It Works Well */ @Controller public class Home { @Autowired private IManager<BaseObject> manager; public void setManager(IManager<BaseObject&g
/**
* For Exple:
* Spring Controller
* & Tiles View Resolver
* It Works Well
*/
@Controller
public class Home {
@Autowired
private IManager<BaseObject> manager;
public void setManager(IManager<BaseObject> manager) {
this.manager = manager;
}
@RequestMapping(value = "/listprovider", method = RequestMethod.GET)
public String listProvider(ModelMap model) {
model.addAttribute("listprovider",this.manager.getAllProvider());
return "listProviderPage";
// listProviderPage ==> the name of the rendered (Tiles)View.
// it works well
}
}
/**
*关于解释:
*弹簧控制器
*平铺视图解析程序(&T)
*它工作得很好
*/
@控制器
公屋{
@自动连线
私人IManager;
公共void集合管理器(IManager){
this.manager=经理;
}
@RequestMapping(value=“/listprovider”,method=RequestMethod.GET)
公共字符串listProvider(ModelMap模型){
model.addAttribute(“listprovider”,this.manager.getAllProvider());
返回“listProviderPage”;
//listProviderPage=>渲染(平铺)视图的名称。
//它工作得很好
}
}
但是使用RestController,呈现的只是一个JSON,而不是一个视图页面,我希望同时呈现视图页面和JSON数据
/**
* But with
* Spring4 RestController
*
*/
@RestController
public class Home {
@Autowired
private IManager<BaseObject> manager;
public void setManager(IManager<BaseObject> manager) {
this.manager = manager;
}
@RequestMapping(value = "/listprovider", method = RequestMethod.GET)
public String listProvider() {
return this.manager.getAllProvider(); // Message Converter To Json
// what about the view?
// what is the secret of view resolver in **Spring Rest**
}
}
/**
*但是
*Spring4控制器
*
*/
@RestController
公屋{
@自动连线
私人IManager;
公共void集合管理器(IManager){
this.manager=经理;
}
@RequestMapping(value=“/listprovider”,method=RequestMethod.GET)
公共字符串listProvider(){
将此.manager.getAllProvider();//消息转换器返回到Json
//风景怎么样?
//在**Spring Rest中,视图解析器的秘密是什么**
}
}
@RestController是@Controller和@ResponseBody的组合
当您使用@RestController时,响应会隐式转换为Json格式,无需显式声明@responseBy
它被定义为只发送定义格式的数据,使用它无法检索任何视图
若要从@restcontroller检索页面,则需要使用ModelandView或
编写一个新的控制器,并用@controller注释并返回视图名称,以便它查找视图解析器并呈现适当的页面
您需要在spring配置文件中配置视图解析器,如下所示
@Bean
public UrlBasedViewResolver urlBasedViewResolver()
{
UrlBasedViewResolver res = new InternalResourceViewResolver();
res.setViewClass(JstlView.class);
res.setPrefix("/WEB-INF/");
res.setSuffix(".jsp");
return res;
}
所以,当您从控制器返回页面名称时,视图解析器在WEB-INF文件夹中查找适当的jsp页面并返回视图
以下链接供参考
@RestController是@Controller和@ResponseBody的组合 当您使用@RestController时,响应会隐式转换为Json格式,无需显式声明@responseBy 它被定义为只发送定义格式的数据,使用它无法检索任何视图 若要从@restcontroller检索页面,则需要使用ModelandView或 编写一个新的控制器,并用@controller注释并返回视图名称,以便它查找视图解析器并呈现适当的页面 您需要在spring配置文件中配置视图解析器,如下所示
@Bean
public UrlBasedViewResolver urlBasedViewResolver()
{
UrlBasedViewResolver res = new InternalResourceViewResolver();
res.setViewClass(JstlView.class);
res.setPrefix("/WEB-INF/");
res.setSuffix(".jsp");
return res;
}
所以,当您从控制器返回页面名称时,视图解析器在WEB-INF文件夹中查找适当的jsp页面并返回视图
以下链接供参考
我知道Vaibs,但问题是如何使用Spring Rest Controller管理视图?谁/什么负责春季休息中的渲染视图?如何在即将到来的请求和视图响应之间进行映射?我知道Vaibs,但问题是如何使用SpringREST控制器管理视图?谁/什么负责春季休息中的渲染视图?如何在未来请求和视图响应之间进行映射?