SpringBoot 解决ModelAndView强转Json问题

Spring Boot使用ModelAndView来返回数据和视图,它是一个包含模型数据和视图名称的对象。ModelAndView将模型数据添加到模型中,并指定要返回的视图名称。 以下是使用ModelAndView的全过程: 1. 创建Controller类并添加@RequestMapping注解,该注解指定了请求的URL和HTTP方法。 2. 在Controller方法中创建ModelAndView对象。 3. 添加模型数据到ModelAndView对象中。 4. 设置视图名称,将其返回给DispatcherServlet。 5. DispatcherServlet将视图名称解析为视图对象,并使用模型数据渲染视图。 6. 渲染后的视图作为HTTP响应发送给客户端。 下面是一个示例Controller类,它返回一个包含“hello”消息的ModelAndView对象: ``` @Controller public class ExampleController { @RequestMapping(value = "/hello", method = RequestMethod.GET) public ModelAndView hello() { ModelAndView modelAndView = new ModelAndView(); modelAndView.addObject("message", "hello"); modelAndView.setViewName("hello"); return modelAndView; } } ``` 在上面的示例中,我们创建了一个ModelAndView对象,并将“message”属性设置为“hello”。我们还设置了视图名称“hello”,这意味着DispatcherServlet将使用名为“hello”的视图来渲染响应。 我们还可以将模型数据添加到ModelAndView对象中,如下所示: ``` @RequestMapping(value = "/hello", method = RequestMethod.GET) public ModelAndView hello() { Map<String, Object> model = new HashMap<>(); model.put("message", "hello"); model.put("name", "John"); ModelAndView modelAndView = new ModelAndView("hello", model); return modelAndView; } ``` 在上面的示例中,我们创建了一个包含两个模型属性的Map对象,并将其传递给ModelAndView构造函数。这些模型属性可以在视图中使用,如下所示: ``` <html> <body> <h1>${message} ${name}!</h1> </body> </html> ``` 在上面的示例中,我们使用了EL表达式${message}和${name}来输出模型属性的值。 总之,使用ModelAndView可以很方便地返回数据和视图,它提供了一种解耦的方式来处理模型数据和视图。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值