java - 如何使用类中的 setters 方法将数据插入 JPA 实体表?

标签 java spring-data-jpa h2

以下是我如何创建表并定义 set 方法:

@Entity
@Table(name = "Book")
public class Book extends AbstractPersistable<Long> {

@Column(name = "id")
private Long id;
@Column(name = "name")
private String name;

public void setContent (String name) {
    this.name = name;
}
}

这就是我尝试从 Controller 设置内容的方式:`

@RequestMapping("/addBook")
@ResponseBody
public String addBook(@RequestParam("name") String name) {
    Book book = new Book();
    book.setContent(name);
    return name;        
}

当我使用 name 参数值从 addBook 页面设置新内容时,该内容显示在同一页面上。现在我想做的是将更多内容插入到表中,但我不确定内容是否插入到表中。我需要在表中添加更多内容。 setContent 方法是更新内容还是插入内容?如果表格有内容,我该如何查看表格?

最佳答案

我假设你有一个 spring 存储库来执行类似的 CRUD 操作

public interface BookRepository extends JpaRepository<Book ,Long> {

}

然后在你的 Controller 类中你有

@Autowired
private BookRepository repo;

现在在您的 addBook 方法中,您可以通过这种方式保存图书对象

@RequestMapping("/addBook")
@ResponseBody
public String addBook(@RequestParam("name") String name) {
    Book book = new Book();
    book.setContent(name);
    repo.save(book);
    return name;        
}

您的图书对象现在将添加到您的数据库

关于java - 如何使用类中的 setters 方法将数据插入 JPA 实体表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41332065/

相关文章:

java - Spring - JPA - 插入 - 不传递具有默认值的字段的值会引发错误

java - 由 : org. h2.jdbc.JdbcSQLException 引起:数据转换错误转换

sql - H2 和外键

java - org.apache.catalina.startup.Catalina.stopServer(Catalina.java :395)

java - Realm 图像存储互操作性 Android iOS (Swift/Java)

java - 如何判断框架是否存在

jpa - 无法将 eclipselink 与 spring boot 一起使用

java - hudson : Builds Taking Longer time than What it takes by running it Locally

java.lang.ClassCastException : [B cannot be cast to [Ljava. lang.Object;使用 JPA 2.2 query.getResultStream().findFirst() 时

java - H2、Sql-Server、MySql 中的二进制数据类型