Ayo*_*b k 5 java spring-boot graphql graphql-java
我正在使用:graphql-spring-boot 和 graphql-java-tools 来实现。
电影.graphqls
type Movie {
id: Short
name: String
poster: String
releaseDate: String
runtime: String
storyline: String
rated: String
rating: String
inserted: String
}
type Query {
movies: [Movie]
movie(id: ID!): Movie
}
Run Code Online (Sandbox Code Playgroud)
电影模型
@Entity
public class Movie {
private Short id;
private String name;
private String poster;
private Date releaseDate;
private Time runtime;
private String storyline;
private String rated;
private double rating;
private Timestamp inserted;
}
Run Code Online (Sandbox Code Playgroud)
正如你所看到的,我与其他模型没有任何关系。最后是实现GraphQLQueryResolver 的
类
@Component
public class Query implements GraphQLQueryResolver {
@Autowired
private MovieRepository movieRepository;
public List<Movie> movies() {
return this.movieRepository.findAll();
}
public Movie movie(Short id) {
return this.movieRepository.getOne(id);
}
}
Run Code Online (Sandbox Code Playgroud)
以下查询工作正常:
{
movies{
name
rating
}
}
Run Code Online (Sandbox Code Playgroud)
但是这个查询:
{
movie(id: 1){
name
}
}
Run Code Online (Sandbox Code Playgroud)
给我以下错误:
获取数据时出现异常(/电影/评级):无法初始化代理 [com.example.demo.model.Movie#1] - 无会话
尝试更改getOne
为findOne
public Movie movie(Short id) {
return this.movieRepository.findOne(id);
}
Run Code Online (Sandbox Code Playgroud)
我认为使用getOne
要求调用位于事务上下文中。因此出现错误 - 没有会话。
归档时间: |
|
查看次数: |
1151 次 |
最近记录: |