首页 > 解决方案 > 使用 Spring JPA 未保存在数据库中的 Rest api 响应数据

问题描述

我对任何与 Spring 相关的东西都很陌生,所以你能帮我解决这个问题吗?我正在尝试编写一个注册 api,它使用 Spring JPA 在数据库中保存一些数据。

这是我的代码:

@Entity 模型:

@Entity
@Table(name = "registerapplications")
public class RegisterApplication {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id; 

    private String applicationId;

    public RegisterApplication (String applicationId) {
        this.applicationId = applicationId;
    }

    // Getters and Setter
}

存储库:

public interface RegisterRepository extends CrudRepository<RegisterApplication, Long>{

}

控制器:

@RestController
public class RegisterApplicationController {

    @Autowired
    private RegisterRepository registerRepository;

    @RequestMapping (path="/register", method=RequestMethod.POST)
    public @ResponseBody RegisterApplication registerApplicationController() {
        RegisterApplication registerApplication = new RegisterApplication(UUID.randomUUID().toString());
        registerRepository.save(registerApplication);
        return registerApplication;
    }   
}

应用程序属性:

spring.jpa.hibernate.ddl-auto=create
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/register
spring.datasource.username=admin
spring.datasource.password=admin

该请求正常工作,但它没有将数据保存在我的表中:数据库截图

我没有错误,所以我不知道问题出在哪里。请您看一下代码并给我一些提示吗?

标签: javadatabaserestspring-data-jpa

解决方案


我认为您的问题的原因是您忘记在您的with中注释该applicationId字段。entity@Column


推荐阅读