Я пытаюсь прочитать Pricebject
идентификатор из хранилища, удалить его и снова сохранить как новый PriceObject
со старым идентификатором, но он сохраняет с другим идентификатором.
Это мой метод:
public void getActualPricesAndSaveInDb() {
try {
String symbolString = symbol.getSymbol();
PriceObject oldPriceObject = pricesRepository.findByCompanySymbol(symbolString);
PriceObject newPriceObject = new PriceObject();
if (oldPriceObject != null) {
pricesRepository.deleteByCompanySymbol(symbolString);
newPriceObject.setId(oldPriceObject.getId());
}
newPriceObject.setCompanySymbol(symbolString);
pricesRepository.save(newPriceObject);
} catch (APICommandConstructionException | APIReplyParseException | APICommunicationException
| APIErrorResponse e) {
e.printStackTrace();
}
}
Это мой PriceObject.class :
@Entity
@Data
public class PriceObject {
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Id
Integer id;
@Column(nullable = false)
String companySymbol;
...
}
Я уже пробовал:
изменить аннотацию @GeneratedValue
параметр для (strategy = GenerationType.AUTO)
,
изменить аннотацию @GeneratedValue
параметр для (strategy = GenerationType.SEQUENCE)
.