SpringMVC_0">1.SpringMVC响应常用注解
注解名称 | 注解类型 | 位置 | 作用 |
---|---|---|---|
@RestController | 类注解 | SpringMVC控制器类上定义 | 设置当前类为SpringMVC控制器类,且设置当前控制器类中所有方法的返回值为响应内容(该注解包含@ResponseBody注解) |
@ResponseBody | 方法注解 | SpringMVC控制器方法上定义 | 设置当前控制器方法响应内容为当前返回值,无需解析 |
2.响应类型
(1)前端页面
package com.example.controller;import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;@Controller
@RequestMapping("/demos")
public class DemoController {@RequestMapping("/page")public String goPage() {return "页面文件名" ;}
}
(2)文本数据(String)
控制器中,方法的返回值如果是String类型,SpringMVC将解析字符串进行页面跳转。在方法上加
@ResponseBody注解表示返回值为响应内容,无需解析
ackage com.example.controller;import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;@Controller
@RequestMapping("/demos")
public class DemoController {@RequestMapping("/str")@ResponseBodypublic String getString() {return "响应文本数据" ;}
}
(3)Json数据
package com.example.controller;import com.example.domain.User;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;@Controller
@RequestMapping("/demos")
public class DemoController {@RequestMapping("/json")@ResponseBodypublic User getJson() {User user = new User();return user ;}
}