javaEE Springmvc,Controller方法返回值

Springmvc的jar包下载:https://pan.baidu.com/s/1Uu5R96z4LwwtydGq4B60Xg  密码:8c3n

ItemController.java(Controller后端控制器):

package com.xxx.springmvc.controller;

import java.io.IOException;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

import com.xxx.springmvc.pojo.Items;
import com.xxx.springmvc.service.ItemService;

//商品管理
@Controller
@RequestMapping(value = "/item")
public class ItemController {
	
	@Autowired
	private ItemService itemService;
	
	/**
	 * Controller方法返回值
	 * 1.ModelAndView  有动态数据和视图路径   (不建议使用)
	 * 2.String    返回视图路径     Model携带动态数据    (建议使用) 数据与视图解耦(MVC思想)
	 * 3.void      适用于ajax请求     通过response返回json格式数据  
	 */
	
	//返回ModelAndView(不推荐)
	@RequestMapping(value = "/itemlist.action")
	public ModelAndView itemList(){
		
		List<Items> list = itemService.selectItemsList();
		
		ModelAndView mav = new ModelAndView();
		//通过ModelAndView往Request域中绑定数据。
		mav.addObject("itemList", list);  //jsp页面中可以通过el表达式${itemList}获取。
		
		//指定view视图(jsp页面)。
		mav.setViewName("itemList"); //指定视图路径。可以在springmvc.xml文件中配置视图解析器,配置jsp页面路径的前缀和后缀。
		return mav;  //返回ModelAndView
	}
	
	//返回String(推荐),通过Model或者ModelMap携带动态数据
	@RequestMapping(value = "/itemlist2.action")
	public String itemList2(Model model) {  //model带动态数据
		
		List<Items> list = itemService.selectItemsList();
		
		//通过model往Request域中绑定数据。
		model.addAttribute("itemList", list); //jsp页面中可以通过el表达式${itemList}获取。
		return "itemList";  //返回视图(jsp页面)路径(String)
		//return "redirect:/itemEdit.action?itemId=1;   //重定向
		//return "forward:/itemEdit.action";   //转发
	}
	
	//返回void;适用于Ajax,返回Json数据
	@RequestMapping(value = "/itemlist3.action")
	public void itemList3(Model model,HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException {
		
		List<Items> list = itemService.selectItemsList();
		//model.addAttribute("itemList", list);
		//request.getRequestDispatcher("/WEB-INF/jsp/success.jsp").forward(request, response);  //转发
		//response.sendRedirect("itemlist.action");   //重定向
		
		response.getWriter().print("{\"abc\":123}");  //Ajax 返回Json数据。
	}
}

猜你喜欢

转载自blog.csdn.net/houyanhua1/article/details/82814102