springMVC的几种返回数据的类型

SpringMVC 的几种返回数据的方式

1.返回一个 ModelAndView构造函数

//对于ModelAndView构造函数可以指定返回页面的名称,也可以通过setViewName方法来设置所需要跳转的页面;  

    @RequestMapping(value="/index2",method=RequestMethod.GET)  
    public ModelAndView index2(){  
        ModelAndView modelAndView = new ModelAndView();  
        modelAndView.addObject("name", "xxx");  
        modelAndView.setViewName("/user/index");  
        return modelAndView;  
    }  
    //返回的是一个包含模型和视图的ModelAndView对象;

2.返回一个Model一个模型对象,

   /** 
     * Model一个模型对象, 
     * 主要包含spring封装好的model和modelMap,以及java.util.Map, 
     * 当没有视图返回的时候视图名称将由requestToViewNameTranslator决定;  
     * @return 
     */  
    @RequestMapping(value="/index3",method=RequestMethod.GET)  
    public Map<String, String> index3(){  
        Map<String, String> map = new HashMap<String, String>();  
        map.put("1", "1");  
        //map.put相当于request.setAttribute方法  
        return map;  
    }  
    //响应的view应该也是该请求的view。等同于void返回。 

3.返回String

  //通过model进行使用  
    @RequestMapping(value="/index4",method = RequestMethod.GET)  
    public String index(Model model) {  
        String retVal = "user/index";  
        User user = new User();  
        user.setName("XXX");  
        model.addAttribute("user", user);  
        return retVal;  
    }  

4.返回Json 格式类型
在pom.xml配置文件中加入跟SpringMVC返回JSON数据绑定相关的依赖包:

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.8.8</version>
</dependency>

java后端代码

	import com.gwolf.springmvc.dao.DepartmentDao;
	import com.gwolf.springmvc.dao.EmployeeDao;
	import com.gwolf.springmvc.domain.Employee;
	@Controller
	public class EmployeeHandler {
        @Autowired
        private EmployeeDao employeeDao;
        
        @Autowired
        private DepartmentDao departmentDao;
        
        @RequestMapping("/springmvc/testJson")
        @ResponseBody
        public Collection<Employee> testJson() {
                return this.employeeDao.getAll();
        }                
	}

页面代码,需要在页面添加一个返回JSON的超链接。

<html>
<script type="text/javascript" src="scripts/jquery-1.9.1.min.js"></script>
<script type="text/javascript">
        $(function(){
                $("#testJson").click(function(){
                        var url = this.href;
                        
                        var args = {};
                        
                        $.post(url,args,function(data) {
                                for(var i=0;i<data.length;i++) {
                                        var id = data[i].id;
                                        var lastName = data[i].lastName;
                                        
                                        alert(id+":" + lastName);
                                }
                                
                        });
                });
        })
</script>
<body>
        <h2>
                <a href="springmvc/testJson" id="testJson">Test JSON</a>
        </h2>
</body>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值