博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SSM框架中,controller的action返回参数给vue.js
阅读量:5024 次
发布时间:2019-06-12

本文共 1589 字,大约阅读时间需要 5 分钟。

在SSM框架中,controller的action中,返回的是视图,即jsp页面或是ModelAndView,若是通过axios给vue传值的话,需要转换为字符串或是user实体类对象。

使用@ResponseBody进行返回值转换。

1.String

@RequestMapping("/login")  @ResponseBody  public String login(          )throws Exception  {           String username ="csq";     String password ="123";     user r = this.userservice.findLoginUser(username, password);       if (r.getIdent() == 0) {        return "index";    }    else{        return "login";    }  }

若是不加@ResponseBody,

此时将报404,找不到对应的jsp页面,因为返回的是视图view。

添加之后,

返回“index”字符串。

2.JSON对象(user实体类,list列表)

@RequestMapping("/login")  @ResponseBody  public user login(          )throws Exception  {     String username ="csq";     String password ="123";     user r = this.userservice.findLoginUser(username, password);    if (r.getIdent() == 0) {        return r;    }    else{        return r;    }  }

若是不加@ResponseBody,

此时报404,返回的是视图view。

添加之后,

返回json对象,里面是查询到的一条数据。

结论:若是通过jsp页面与后台数据交换的话,就不需要添加@RequestBody,直接返回视图就可以了,因为Spring mvc中默认返回的是视图;若是需要传参数给vue,则需要添加@RequestBody进行返回值的转换。

 

当controller中返回值为json对象时,需要进行一些配置:

(1)springmvc.xml文件中添加:

application/json;charset=UTF-8

此时运行会报500,,提示缺少相应的包,

(2)

将jackson对应的三个jar包导入到项目中,此时才可以正确返回json对象,将不再报500.

需要放到WEB-INF下的lib下,引入外部目录的jar,工程编译可以通过,部署的时候不会拷贝到工程里面去,还是找不到(重点)

 

现在就可以传参数给vue,实现前后端数值的传递了。

 

转载于:https://www.cnblogs.com/5201314m/p/10648493.html

你可能感兴趣的文章
ssh无密码登陆屌丝指南
查看>>
MySQL锁之三:MySQL的共享锁与排它锁编码演示
查看>>
docker常用命令详解
查看>>
jQuery技巧大放送
查看>>
字符串转换成JSON的三种方式
查看>>
Hive时间函数笔记
查看>>
clojure-emacs-autocomplete
查看>>
一个自己写的判断2个相同对象的属性值差异的工具类
查看>>
10 华电内部文档搜索系统 search03
查看>>
[HIHO1149]回文字符序列(dp)
查看>>
[HDU1402]A * B Problem Plus(FFT)
查看>>
[CF803C] Maximal GCD(gcd,贪心,构造)
查看>>
逆时针旋转的矩阵变换
查看>>
第10周15/16/17
查看>>
【数据库】SQL两表之间:根据一个表的字段更新另一个表的字段
查看>>
四六级作文常见错误解析(转载)
查看>>
Tomcat
查看>>
./是当前目录 ../是当前的上一级目录。上上级就是../../一般绝对路径时候常用...
查看>>
linux支持FTP和SFTP服务【1】
查看>>
树的递归与非递归遍历方法
查看>>