我正在关注this tutorial并且我正在抓住一些东西。目前我可以从Angular前端调用来保存数据库中的内容,但传递给数据库的值是空白的:
Hibernate:从hibernate_sequences tbl中选择tbl.next_val,其中tbl.sequence_name =?更新 Hibernate:更新hibernate_sequences设置next_val =? next_val =?和sequence_name =? Hibernate:插入movie(name,id)值(?,?)
在我的app.component.ts
我有createMovie()函数:
createMovie(movie: Movie): void {
this._dataService.createMovie<Movie>({'id': 20, 'name': 'Star Wars'})
.subscribe((data) => this.movie = data,
error => () => {
'something went wrong';
},
() => {
console.log(this.movies);
});
}
这会向app.service.ts
发送一个带有id和name的对象。
public createMovie<T>(movie: Movie): Observable<T> {
console.log(movie);
return this.http.post<T>('/api/movies/', movie);
}
此服务调用/
MovieController.java
@RequestMapping(value = "/", method = RequestMethod.POST)
public Movie createMovie(@RequestBody Movie movie){
return movieService.createMovie(movie);
}
这会调用MovieService.java
:
Movie createMovie(Movie movie);
这个createMovie函数由MovieServiceImpl.java
@Override
public Movie createMovie(Movie movie) {
return movieRepository.save(movie);
}
在数据库的影片表中创建了一条记录,但名称值为空。
答案 0 :(得分:0)
您是否已附加调试器或添加了一些日志记录,以查看该名称是否已填充在Movie java对象中?
如果要填充,那么您的ORM映射可能会出错。如果没有填充,则错误可能是JSON到对象的转换。