java 控制器的返回值有多种,可以是String ,ModelAndView,ResponseResults等
1 String类型的有一下几种情况
@RequestMapping("/show")
public String findAll(Model model, HttpServletResponse response, HttpServletRequest request) throws IOException{
List<User> userList = userService.findAll();
model.addAttribute("userList", userList);
response.getWriter().print("{success:true}");
return "/sys/user";
}
//带参数跳转页面
@RequestMapping("/view")
public String listView(Model model,String userkey,HttpServletResponse response)throws Exception {
User user = userService.findByUserkey(userkey);
model.put("user",user);
return "/sys/user/view";
}
//返回json字符串
@RequestMapping(value = "/sys/sysuser/list" ,produces = "text/html;charset=UTF-8")
@ResponseBody
public String list(User user, String regionCode1, int page , int size, HttpServletRequest request) {
Pageable pageable = PageRequest.of(page, size);
try {
Criteria<User> criteria =new Criteria<>();
Page<User> pageList = userService.findAll(criteria, pageable);
return JSON.toJSONString(pageList);
} catch (Exception e) {
e.printStackTrace();
return JSON.toJSONString(new PageImpl<SysUser>(new ArrayList<>(), pageable, 0));
}
}
//光跳转页面
@RequestMapping("/view")
public String listView(){
return "/sys/user/view"
}
2,ModelAndView
//只跳转页面
@RequestMapping("/room_struct3")
public ModelAndView room_struct3() {
return new ModelAndView("/struct/room_struct3");
}
//跳转页面带参数
@RequestMapping("/room_struct3")
public ModelAndView room_struct3() {
Map<String,Object> model = new HashMap<>();
User user = userService.findByUserkey(userkey);
model.put("user",user);
return new ModelAndView("/struct/room_struct3",model);
}
3,ResponseResults
@RequestMapping("/save")
public ResponseResults save(User user){
User user1 = userService.save(user);
return ResponseResults.ok()
//return ResponseResults.ok(user1);
//return ResponseResults.error();
//return ResponseResults.error("错误信息");
}
ResponseResults工具类
package com.laopei.wahaha.util;
import java.util.HashMap;
public class ResponseResults extends HashMap<String, Object> {
private static final long serialVersionUID = -8713837118340960775L;
// 成功
private static final Integer SUCCESS = 0;
// 警告
private static final Integer WARN = 1;
// 异常 失败
private static final Integer FAIL = 500;
public ResponseResults() {
put("code", SUCCESS);
put("msg", "操作成功");
}
public static ResponseResults error(Object msg) {
ResponseResults responseResults = new ResponseResults();
responseResults.put("code", FAIL);
responseResults.put("msg", msg);
return responseResults;
}
public static ResponseResults warn(Object msg) {
ResponseResults responseResults = new ResponseResults();
responseResults.put("code", WARN);
responseResults.put("msg", msg);
return responseResults;
}
public static ResponseResults ok(Object msg) {
ResponseResults responseResults = new ResponseResults();
responseResults.put("code", SUCCESS);
responseResults.put("msg", msg);
return responseResults;
}
public static ResponseResults ok() {
return new ResponseResults();
}
public static ResponseResults error() {
return ResponseResults.error("");
}
@Override
public ResponseResults put(String key, Object value) {
super.put(key, value);
return this;
}
}