Я использую JPA для операций mysql, но несколько раз я получаю сообщение об ошибке при выполнении операций сохранения mysql через JPA.
Ошибка при выполнении операции сохранения =>
Не удалось открыть JPA EntityManager для транзакции; Дубликат записи для ключа «ПЕРВИЧНЫЙ»
Класс модели стола:
@Entity
@Table(name="table_x")
@JsonIgnoreProperties(ignoreUnknown = true)
@JsonInclude(JsonInclude.Include.NON_NULL)
@Data
@TypeDefs({
@TypeDef(name = "json", typeClass = JsonStringType.class),
@TypeDef(name = "jsonb", typeClass = JsonBinaryType.class),
})
public class tableX implements Serializable {
@Id
@Column(name="product_id")
private Long productId;
@Column(name="parent_id")
private Long parentId;
// other fields
}
Mysql Схема:
CREATE TABLE `table_x` (
`product_id` int(12) unsigned NOT NULL,
`parent_id` int(12) unsigned DEFAULT NULL,
// other fields
PRIMARY KEY (`product_id`)
)
Класс репозитория:
@Repository
public interface TableXRepository extends CrudRepository<tableX,Long> {
}
Mysql Операционный класс:
@Component
@Transactional
public class tableXoperationImpl implements ItableXoperation {
@Autowired
private TableXRepository tableXRepository;
public void save(tableX data) {
tableXRepository.save(data);
}
}
что-нибудь, я здесь скучаю, любая помощь будет оценена.