在 java 中使用 JpaRepository 插入新行

oxy*_*_js 6 java mysql spring spring-data-jpa

我对 spring JPA 很陌生。我有以下要插入表中的实体类:

@Entity
@Table(name = "test")
public class Test {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "id")
    private int id;

    @Column(name = "user")
    private String user;
}
Run Code Online (Sandbox Code Playgroud)

我有一个名为test. 我有多个 Test 对象,我想将它插入到表中。为此,我创建了一个 repo 类:

@Repository("testRepo")
public interface TestRepo extends JpaRepository<Test, String> {
//write insert query    
    @Modifying
    @Query(//What insert query I should write)
    void insertData(@Param("id") String id);

}
Run Code Online (Sandbox Code Playgroud)

我已经搜索过但只获得更新查询的选项。

blu*_*ote 5

.save(Entity entity)从 Parent 接口继承的方法CrudRepository可用于更新现有实体或创建新实体。


Mad*_*ddy 1

在您的服务类中执行类似于下面的操作。您不必编写单独的方法来保存实体。存储库的 save 方法可用于保存实体。

class TestDAO{

@Autowired
TestRepo testRepo;

public void saveTest(Test test) {
testRepo.save(test);
}
Run Code Online (Sandbox Code Playgroud)