![](/img/trans.png)
[英]Springs SimpleJdbcInsert doesn't produce auto-generated keys as expected
[英]Spring Boot doesn't increment auto-generated id with type long
我正在創建一個名為 idPallet 的 Long id 類型的集合,它應該遞增。
Pallet.java(集合)
package com.example.ShippingTest.collections;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.SequenceGenerator;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.data.annotation.Id;
import java.util.List;
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Pallet {
@Id
@GeneratedValue(generator = "pallet_seq",strategy = GenerationType.IDENTITY)
@SequenceGenerator(name = "pallet_seq",sequenceName = "pallet",initialValue = 1,allocationSize = 1)
//@JsonIgnore
private Long idPallet;
private int maxPallet;
private String typePallet;
private String shipAddress;
private String shipLocation;
private String shipCountry;
private String destination;
private List<PS> PackingSlip;
}
托盤控制器
@PostMapping("/pallets")
public void savePallet(@RequestBody Pallet pallet) {
palletRepo.save(pallet);
}
資料庫
package com.example.ShippingTest.repositories;
import com.example.ShippingTest.collections.Pallet;
import org.springframework.data.mongodb.repository.MongoRepository;
import org.springframework.stereotype.Repository;
@Repository
public interface PalletRepo extends MongoRepository<Pallet,Long> {
public Pallet findOrderByidPallet(Long idPallet);
}
每當我嘗試發布新托盤時,都會顯示此異常:“消息”:“無法為 com.example.ShippingTest.collections.Pallet 類型的實體自動生成 java.lang.Long 類型的 ID”,
我在沒有 @SequenceGenerator 的情況下嘗試了這個,即使在使用它之后,帖子也沒有用。 當我在 Pallet.java 中添加 @Entity 時,我收到錯誤消息,要求添加另一個 id:'Basic' 屬性類型不應該是容器。
我認為您缺少@Entity
注釋。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.