1.2.1 方式一
@RequestMapping(“/quick2”)
public ModelAndView save2() {
/*
-
Mode:模型 作用封装数据
-
View:视图 作用展示数据
-
*/
ModelAndView modelAndView = new ModelAndView();
//设置模型数据
modelAndView.addObject(“username”, “itcast”);
//设置视图名称
modelAndView.setViewName(“success”);
return modelAndView;
}
返回数据后,可以直接在界面上进行使用,类似于模板语法。
1.2.2 方式二
@RequestMapping(“/quick3”)
public ModelAndView save3(ModelAndView modelAndView) {
modelAndView.addObject(“username”, “KaiSarH”);
modelAndView.setViewName(“success”);
return modelAndView;
}
1.2.3 方式三
@RequestMapping(“/quick4”)
public String save4(Model model) {
model.addAttribute(“username”, “OK”);
return “success”;
}
1.2.4 方式四
@RequestMapping(“/quick5”)
public String save5(HttpServletRequest request) {
request.setAttribute(“username”, “James”);
return “success”;
}
=================================================================
Web基础阶段,客户端访问服务器段,如果想直接返回字符串作为响应体返回的话,只需要使用response.getWrite().print("hello world")
即可,那么在Controller中想直接返回字符串应该怎么办嗯?
2.1.1 方式一
通过SpringMVC框架注入的response对象,使用response.getWriter().print(“hello world”) 回写数据,此时不需要视图跳转,业务方法返回值为void
@RequestMapping(“/quick6”)
public void save6(HttpServletResponse response) throws IOException {
response.getWriter().print(“hetllo itcast”);
}
2.1.2 方式二
将需要回写的字符串直接返回,但此时需要通过**@ResponseBody**注解告知SpringMVC框架,方法返回的字符串不是跳转是直接在http响应体中返回
@RequestMapping(“/quick7”)
public String save7() throws IOException {
return “hello itheima”;
}
2.2.1 方式一
@RequestMapping(“/quick8”)
@ResponseBody
public String save8() throws IOException {
return “{“username”:“zhangsan”,“age”:18}”;
}
2.2.2 方式二
使用第三方JSON转换工具将对象转换为JSON格式字符串在返回
- 引入
- 使用
@RequestMapping(value = “/quick10”)
@ResponseBody
public String save10() throws IOException {
User user = new User();
user.setUsername(“lisi”);
user.setAge(30);
System.out.println(user);
// 使用JSON转换工具将对象转换为JSON格式
ObjectMapper objectMapper = new ObjectMapper();
String json = objectMapper.writeValueAsString(user);
return json;
}