У меня очень странное поведение. Я создал репозиторий, который расширяет CrudRepository. Все методы по умолчанию работает нормально, кроме метода сохранения. Это не сохраняет новую сущность в БД. Мне нужно сохранить новую сущность с идентификатором, который я предоставляю. Если я предоставляю существующий идентификатор в БД - тогда успешно сохраняю обновления этой сущности, но если я устанавливаю новый идентификатор - тогда ничего, даже ошибки. Мой репо:
import com.xxx.yyy.entities.Game;
import org.springframework.data.repository.CrudRepository;
import org.springframework.stereotype.Repository;
@Repository
public interface GameRepository extends CrudRepository<Game, Integer> {}
Моя сущность:
import org.springframework.data.annotation.Id;
import org.springframework.data.relational.core.mapping.Table;
import java.util.Objects;
@Table("game_info")
public class Game {
@Id
private int id;
private String name;
private int wager;
setters and getters
Мой сервис:
public void addGame() {
Game g = new Game();
g.setId(10);
g.setName("Name");
g.saveWager(22);
gameRepository.save(game);
}
Мой стол:
CREATE TABLE `game_info`
(
`id` INT UNSIGNED NOT NULL COMMENT 'Unique identifier of the Game',
`name` VARCHAR(32) NOT NULL COMMENT 'Name of the Game',
`wager` INT NOT NULL COMMENT 'Wager of the Game',
PRIMARY KEY (`id`),
UNIQUE (`name`)
);