@GeneratedValue没有在实体类中生成id值



我的实体类试图实现stocks.java

@Entity
@Table(name="stocks")
public Class Stocks
{
@Id
@GeneratedValue
@Column(name = "stock_id")
private Integer stocked;
}

这是我写的其余API控制器stockcontroller.java

@RestController
@RequestMapping("home/stocks")
public class HomeController {
@Autowired
private StockRepo stocks;

//POST: adds a new song to the repository
@PostMapping("/add")
public void addSong(@RequestBody(required = true) Stock stock) throws DuplicateItemException {
if(stock.existsById(stock.stockId())) {
throw new DuplicateItemException();  
}
stocks.save(song);
}

}

您必须定义生成策略。

例如,您可以将@GeneratedValue替换为:

@GeneratedValue(strategy = GenerationType.IDENTITY)

@GeneratedValue(strategy = GenerationType.SEQUENCE)

@GeneratedValue(strategy = GenerationType.TABLE)

当然,必须将@Transactional放在方法addSong上才能持久化实体。

将@GeneratedValue更改为@GeneratedValue(策略=GenerationType.IDENTITY(或@GeneratedValue(策略=GenerationType.SQUENCE(

最新更新