springmvc(二)---controller中方法的三种返回值形式

来源:互联网 发布:手机淘宝一键秒杀在哪? 编辑:程序博客网 时间:2024/05/29 18:12

一、ModelAndView

上篇已经使用到就不再累述。

二、String

a、返回逻辑视图名

@RequestMapping("/queryBlog.action")
public String queryBlog(Model model){
List<Blog> blogs = new ArrayList<Blog>();
Blog blog1 = new Blog();
blog1.setId(1);
blog1.setTitle("springmvc");
blog1.setContent("适配器和映射器的使用");
blog1.setCreateTime(new Date());
blogs.add(blog1);
Blog blog2 = new Blog();
blog2.setId(2);
blog2.setTitle("springmvc");
blog2.setContent("适配器和映射器的使用");
blog2.setCreateTime(new Date());
blogs.add(blog2);
//将数据放到request域中
model.addAttribute("blogs", blogs);
return "blog/blogList";
}

b、redirect重定向到queryBlog.action

@RequestMapping("/updateBlog.action")
public String updateBlog(){
return "redirect:/queryBlog.action";
}

c、forward页面转发

@RequestMapping("/showBlog.action")
public String showBlog(){
return "forward:/queryBlog.action";
}

三、void

a、利用request请求转发

@RequestMapping("/showBlogList.action")
public void showBlogList(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
List<Blog> blogs = new ArrayList<Blog>();
Blog blog1 = new Blog();
blog1.setId(1);
blog1.setTitle("springmvc");
blog1.setContent("适配器和映射器的使用");
blog1.setCreateTime(new Date());
blogs.add(blog1);
Blog blog2 = new Blog();
blog2.setId(2);
blog2.setTitle("springmvc");
blog2.setContent("适配器和映射器的使用");
blog2.setCreateTime(new Date());
blogs.add(blog2);
request.setAttribute("blogs",blogs);
request.getRequestDispatcher("/WEB-INF/blog/blogList.jsp").forward(request, response);
}

b、利用response重定向

@RequestMapping("/showBlogByResponse.action")
public void showBlogByResponse(HttpServletRequest request, HttpServletResponse response) throws IOException{
response.sendRedirect(request.getContextPath()+"/queryBlog.action");
}

c、利用response返回json类型

@RequestMapping("/showBlogByResponseReturnJson.action")
public void showBlogByResponseReturnJson(HttpServletRequest request, HttpServletResponse response) throws IOException{
response.setContentType("application/json;charset=utf-8");
response.setCharacterEncoding("UTF-8");
response.getWriter().write("json基本类型");
}

四、小结

本博文介绍了springmvc的controller对象方法可能返回的三种形式,并对各种形式进行了举例说明。

如果有疑问或者对本博文有何看法或建议或有问题的,欢迎评论,恳请指正!

0 0
原创粉丝点击