说明
在使用了springboot后,再使用ssm框架时,发现真的很繁琐,配置真的太多了。在学习ssm时,当时的页面是用jsp,所以只要配置了视图解析器
,在接口处返回一个字符串或者是ModelAndview
对象即可。本次项目前端部分使用vue框架,页面自然是html。所以应该返回json数据,为了有统一优雅的返回对象供前端解析,需要在项目中进行配置。
如果不配置可能会抛出这个异常。nested exception is java.lang.IllegalArgumentException: No converter found for return value of type: class java.util.ArrayList
错误,这里返回了一个List对象。
步骤
- 在我们自定义的spring.xml配置文件中添加
<mvc:annotation-driven/>
注解,这个不用说一定是添加了。 - 添加依赖
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.9.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.9.0</version>
</dependency>
- 在相应的请求地址处理方法上加
@ResponseBody
即可。
总结
记得json数据要用对象传给前台,也就是说要为json数据创建一个相应的实体类,该实体类的属性就是json数据的key,json数据的value用实体类的set方法存给对象,用return 实体类将json数据传给前台。