我有一个spring-boot
应用程序,该应用程序可以处理并在旅途中保存大约100个对象的列表。
在处理状态之前,一切似乎都很好,但是调用save
的{{1}}方法会引发以下异常:
MongoRepository
我也清除了db后重试,但出现相同的错误。无法理解我在做什么错误。
这是文档对象:
com.mongodb.DuplicateKeyException: Write failed with error code 11000 and error message 'E11000 duplicate key error collection: uhtableau_db.ticket index: _id_ dup key: { : 0 }'
}
在处理一些json数据作为输入之后,我创建了此@Document
public class Ticket {
public Ticket(){
}
@Id
private long id;
private long ticket_id; // this is the field in the json which i am processing
private String topic;
private List<String> tag;
private String type;
private long brand;
private long group;
private String priority;
private String status;
private String created_at;
private String channel;
文档的列表。我需要将此列表保存在mongo中。
这是在做什么:
Ticket
还有 @Autowired
TicketRepository ticketRepository;
@GetMapping("/tickets")
public void saveTicketData(){
List<Ticket> tickets = ZendeskClient.parseJsonForTicketList(ticketJson);
ticketRepository.save(tickets);
}
:
TicketRepository
答案 0 :(得分:1)
如果需要使用空值的功能,则可以为@Id
使用相应的对象(由spring data mongo使用以进行新插入)
@Id
private Long id
当然,在解析阶段,“ parseJsonForTicketList
”方法会将id设置为0。