Spring Boot:关于“No converter found for return value of type: class xxx”的解决方法
首先在对应的controller中的@RestController中返回json对象的操作
public class HelloController {
@RequestMapping("/getUser")
public User getUser() {
User user=new User("小明","xxx");
return user;
}
}
声明一个User类:
public class User {
private String name;
private String passwd;
public User(String name,String passwd){
this.name = name;
this.passwd = passwd;
}
}
在pom.xml文件中去配置jackson
<properties>
<!--jackson版本配置-->
<jackson>2.5.4</jackson>
</properties>
<dependencies>
<!--配置jackson-->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson.version}</version>
</dependency>
</dependencies>
一般情况下到这就可以运行程序,返回json数据了,但是运行之后才发现,会出现一个“No converter found for return value of type: class xxx“的错误
通过查找资料发现,处理json对象的类,数据必须要有相关的get和set方法,
在User.java中加入相应的get和set方法
public void setUserName(String name){
this.name = name;
}
public void setPassWord(String passwd){
this.passwd = passwd;
}
public String getUserName(){
return name;
}
public String getPassWord(){
return passwd;
}
这些重新运行程序就可以返回对应的数据了