赞
踩
目录
本专栏已介绍:
返回静态页面:
【Spring MVC】_SpringMVC项目返回静态页面_mvc 返回当前页面-CSDN博客https://blog.csdn.net/m0_63299495/article/details/138230689返回数据:
【Spring MVC】_SpringMVC项目返回数据-CSDN博客https://blog.csdn.net/m0_63299495/article/details/138257338本篇介绍返回HTML与返回JSON;
.java文件内容如下:
- package com.example.demo.controller;
-
- import org.springframework.stereotype.Controller;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.ResponseBody;
- import org.springframework.web.bind.annotation.RestController;
-
- @RequestMapping("/return")
- @Controller
- public class ReturnController {
- @ResponseBody
- @RequestMapping("/returnHtml")
- public String returnHtml(){
- return "<h1>Return as HTML Page.<h1>";
- }
- }
运行启动类,根据URL访问页面如下:
在本例中使用的是@Controller与@ResponseBody注解,即选择返回数据;
当后端返回的代码段中含有HTML代码,会被浏览器自动解析为HTML页面;
注:如果需要设置不解析HTML代码,则需要使用转义字符,此处不再演示;
.java文件内容如下:
- package com.example.demo.controller;
-
- import com.example.demo.Person;
- import org.springframework.stereotype.Controller;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.ResponseBody;
- import org.springframework.web.bind.annotation.RestController;
-
- @RequestMapping("/return")
- @Controller
- public class ReturnController {
- @ResponseBody
- @RequestMapping("/returnJson")
- public Person returnJson(){
- Person person = new Person();
- person.setId(1);
- person.setName("Mike");
- person.setAge(20);
- return person;
- }
- }
运行启动类,输入URL进行访问,页面如下:
(代码示例为2.1Person接口)
当接口为对象时,返回的Content-Type会被自动设置为application/json;
(代码示例为1HTML页面)
当接口为String类型时,返回的Content-Type为text/html;
.java文件内容如下:
- package com.example.demo.controller;
-
- import com.example.demo.Person;
- import org.springframework.stereotype.Controller;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.ResponseBody;
- import org.springframework.web.bind.annotation.RestController;
-
- import java.util.HashMap;
- import java.util.Map;
-
- @RequestMapping("/return")
- @Controller
- public class ReturnController {
- @ResponseBody
- @RequestMapping("/returnJson2")
- public Map<String,String> returnMap(){
- Map<String,String> kv = new HashMap<>();
- kv.put("k1","v1");
- kv.put("k2","v2");
- return kv;
- }
- }
根据URL进行访问,页面如下:
使用Fiddler抓包查看HTTP响应详情:
可见接口为形如Map的泛型接口时,返回的Content-Type也是application/json;
即:需要将HTTP响应的body部分设置为JSON类型
无需进行手动设置,当返回一个对象时Spring会自动将content-type设置为json。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。