jpa save() 失败且没有任何错误消息

问题描述 投票:0回答:3

今天尝试使用jpa的save()方法保存实体时,发现保存不成功,并且没有错误信息

@Override
//@Transactional
public ResponseEntity<Object> createAdminUser(CreateUpdateAdminUserDto createUpdateAdminUserDto) {

    AdminUser adminUser = createAdminUserMapper.toEntity(createUpdateAdminUserDto);

    System.out.println("-----");
    System.out.println(adminUser);
    adminUserRepository.save(adminUser);

    return ResponseResult.ok(HttpBody.build(MessageCode.SUCCESS, new HashMap<>()));
}

这是控制台输出的结果

我已经用debug查看过断点,但是执行save()时springboot的发布就结束了,没有执行返回行。我之前用jpa save()是正常的。请问有什么办法可以解决或者放过吗 可以生成错误信息,谢谢

java spring-boot jpa spring-data-jpa save
3个回答
0
投票

我认为你应该提供有关你的代码的更多细节。例如,您如何编写存储库类、服务类或 AdminUser 实体的形状以获得准确的答案。 💪


0
投票

感谢您的回复,我找到问题了。我有两个实体,一个是AdminUser,另一个是AdminUserRole,因为建立这个实体的方式是先db,所以他的fk会以集合的形式显示出来set 这种DB首先允许我在添加adminUser的时候只要去setAdminUserRole(xxx)就可以一次将想要的信息添加到两个表中 但是当我向AdminUserRole添加属性和对应的字段名称(蓝框)时,无法添加数据。我想请问为什么会出现这种情况。我对ORM框架底层操作不是很熟悉,谢谢


0
投票

首先,您必须使用 @Autowired 注释自动装配您的存储库。像这样

@Override
//@Transactional
public ResponseEntity<Object> createAdminUser(CreateUpdateAdminUserDto createUpdateAdminUserDto) {

    @Autowired
    private AdminRepository adminRepository;

    AdminUser adminUser = createAdminUserMapper.toEntity(createUpdateAdminUserDto);

    System.out.println("-----");
    System.out.println(adminUser);
    adminUserRepository.save(adminUser);

    return ResponseResult.ok(HttpBody.build(MessageCode.SUCCESS, new HashMap<>()));
}
© www.soinside.com 2019 - 2024. All rights reserved.