springBoot返回视图与参数
在web项⽬中,controller的返回值⼀般有两种,⼀种是返回对应的页⾯(例如html页⾯,jsp页⾯),⼀种是返回数据(例如json格式的数据)。
使⽤@Controller注解,返回视图与参数
@Controller
public class UserController {
@Resource
private IUserService userService;
@RequestMapping("/userLogin")
public String userLogin(@Param("userName") String userName){
//返回对应的名为success的页⾯
return "success";
}
@RequestMapping("/userLogin_1")
public ModelAndView userLogin_1(){
//返回对应的名为success的页⾯
return new ModelAndView("success");
}
@RequestMapping("/getUsers")
@ResponseBody
public List<Department> getUsers(){
List<User> users=userService.findAllUsers();
//@ResponseBody注解,返回json格式的数据
return users;
}
@RequestMapping(value = "/User", method = RequestMethod.GET)
public ModelAndView init(ModelAndView mv, @Validated UserForm paramsUserForm, BindingResult bindingResult) throws Exception {
// 画⾯权限检测
if (!commonCheck.checkAuthority(userInfo, "User")) {
mv.setViewName("error");
return mv;
}
Map<String, Object> resultMap = userService.init(paramsUserForm);
mv.setViewName("UserInfoPage");
mv.addObject("userInfo", ("userInfo"));
mv.addObject("equipmentList", ("equipmentList"));
//返回视图与参数
return mv;
}
}
使⽤@RestController注解,返回json数据
相当于@Controller+@ResponseBody两个注解的结合,返回json数据不需要在⽅法前⾯加@ResponseBody注解了,但使⽤
@RestController这个注解,就不能返回jsp,html页⾯,视图解析器⽆法解析jsp,html页⾯,返回的内容就是Return ⾥的内容
@RestController
public class TestController {
@RequestMapping("/user")
public User test(){
User user = new User();
user.setId(new BigDecimal(1234));
user.setSex("women");
user.setUserName("dfgdf");
return user;
}
}
结果:{"id":1234, "sex":"women","userName":"dfgdf"}
springboot项⽬返回视图时,前后缀都是有默认值的,也可以⾃⼰定义
application.properties
thymeleaf用法>>>>>>
#jsp path
#spring.view.prefix=/WEB-INF/page/
#spring.view.suffix=.jsp
#html
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html
#关闭缓存
spring.thymeleaf.cache=false
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论