【发布时间】:2019-12-02 05:22:30
【问题描述】:
我是 Spring Boot 新手,所以这个问题可能听起来很傻。我想在数据库中插入一个 json 对象。但这给了我一个错误,例如: “无法评估 Jackson 反序列化的类型”。 在控制台上,我收到如下错误:
Http 415 不支持的 JSON 媒体类型错误
这是我的 POJO 类:
@Entity
@Table(name = "academics")
public class Academics {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "id")
private int id;
@Column(name = "adhaarcard")
private String adhaarCard;
@Column(name = "grade")
private List grades;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getAdhaarCard() {
return adhaarCard;
}
public void setAdhaarCard(String adhaarCard) {
this.adhaarCard = adhaarCard;
}
public List getGrades() {
return grades;
}
public void setGrades(List grades) {
this.grades = grades;
}
}
我的控制器功能:
@RequestMapping(value="saveacademics",method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<Object> saveAvademics(@RequestBody Academics academics) {
academicsService.save(academics);
URI location = ServletUriComponentsBuilder.fromCurrentRequest().path("/{id}")
.buildAndExpand(academics.getId()).toUri();
return ResponseEntity.created(location).build();
}
Angularjs 代码:
$scope.saveAcademics = function() {
var adhaar = sessionStorage.getItem("emp-key");
var _data = {
"adhaarCard":adhaar,
"grades": {
"graduation":
{ "ssc": "SSC", "hsc": "HSC", "quOne": $scope.qone
},
"specialization":
{ 'ssc': "N.A", 'hsc': $scope.hscSpl, 'qoneSpl': $scope.qoneSpl},
"grade":
{ 'ssc': $scope.sscGrade, 'hsc': $scope.hscGrade, 'qoneGrade': $scope.qoneGrade},
"university":
{ 'ssc': $scope.sscUni, 'hsc': $scope.hscUni, 'qoneUni': $scope.qoneUni},
"year":
{ 'ssc': $scope.sscYear, 'hsc': $scope.hscYear, 'qoneYear': $scope.qoneYear}
}
};
console.log(_data);
$http({
url: 'saveacademics',
method: "POST",
data: JSON.stringify(_data)
})
.then(function(response) {
alert("Success");
},
function(response) { // optional
alert("Error Occoured.");
});
}
【问题讨论】:
-
可能是因为List上没有泛型类型吧?试试添加吧?
-
AngularJS $http 服务自动对数据进行字符串化。做两次是否明智?
-
发布 _data 的控制台输出。
-
adhaarCard: ""1111111111"" 等级: 等级: {ssc: "83", hsc: "67", qoneGrade: "60"} 毕业: {ssc: "SSC", hsc: " HSC", quOne: "Eng"} 专业化: {ssc: "NA", hsc: "Scii", qoneSpl: "comp sci."} 大学: {ssc: "Nasik", hsc: "Nasik", qoneUni: "浦那”} 年:{ssc:“2007”,hsc:“2009”,qoneYear:“2013”}
标签: java json angularjs spring-boot spring-data-jpa