Java 使用Vaadin和Hibernate创建表/网格

Java 使用Vaadin和Hibernate创建表/网格,java,spring,hibernate,vaadin,Java,Spring,Hibernate,Vaadin,我想创建一个简单的页面,在这个页面中,vaadin的网格将显示来自数据库的数据。不幸的是,我没有在文档或电影中找到任何解决方案。。。所以,我有我的JPA课程: @Entity @Table public class Movie { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @Column private String movieName; @Column private String des

我想创建一个简单的页面,在这个页面中,vaadin的网格将显示来自数据库的数据。不幸的是,我没有在文档或电影中找到任何解决方案。。。所以,我有我的JPA课程:

@Entity
@Table
public class Movie {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Column
private String movieName;
@Column
private String description;

public Movie(){}

public Movie(String movieName, String description) {
    this.movieName = movieName;
    this.description = description;
}
和所有的能手和二传手。现在我想创建GUI:

@Route("show-movies")
public class MovieGUI extends VerticalLayout{}

我尝试了所有的方法:网格,初始化,但没有任何效果。我只想以一种简单的方式添加3列(name、desc和action),并显示数据库中的数据和创建action的按钮。有人知道如何解决这个问题吗?

大致如下:

@Route("show-movies")
public class MovieGUI extends VerticalLayout{
  MovieGUI(MovieRepository repo) {
    Grid<Movie> movieGrid = new Grid<>();
    movieGrid.setItems(repo.findAll());
    movieGrid.addColumn(Movie::getName).setHeader("Name");
    movieGrid.addColumn(Movie::getDescription).setHeader("Description");
    movieGrid.addComponentColumn(movie -> new NativeButton("Action", click-> doSomething(movie)).setHeader("");
    add(movieGrid);
  }
}
@Route(“放映电影”)
公共类电影GUI扩展垂直布局{
MovieGUI(电影现场回购){
Grid movieGrid=新网格();
movieGrid.setItems(repo.findAll());
addColumn(Movie::getName).setHeader(“名称”);
addColumn(Movie::getDescription).setHeader(“Description”);
movieGrid.addComponentColumn(电影->新建NativeButton(“操作”,单击->doSomething(电影)).setHeader(“”);
添加(电影网格);
}
}
有关更多示例,请查看此处的演示源: