不幸的是,我没有找到解决问题的方法,我需要帮助。我有这样的实体
@Table(name = "A")
@Entity
@Indexed
@Getter
@Setter
@NoArgsConstructor
public class EntityA {
@IndexedEmbedded
@OneToOne(cascade = CascadeType.ALL)
private EntityB b;
}
@Table(name = "B")
@Entity
@Indexed
@Getter
@Setter
@NoArgsConstructor
public class EntityB {
@OneToOne(mappedBy = "b")
private EntityA a;
@KeywordField(name = "text_sort", sortable = Sortable.YES)
@FullTextField(projectable = Projectable.YES)
@Column(nullable = false)
private String text;
}
我为我的 EntityA 进行了第一次保存
EntityB entityB = new EntityB();
entityB.setText("text");
EntityA entityA = new EntityA();
entityA.setB(entityB);
entityARespository.save(entityA);
然后我想更新entityB中的字段文本,所以我首先从数据库中获取entityA,然后进行更新并保存entityA
EntityA entityA = entityARepository.findById(1L);
entityA.getB().setText("test")
entityBRepository.save(entityA);
然后当我用字符串 "test" 进行研究时,没有找到任何结果,但是用字符串 "text" yes 。这意味着索引没有刷新,但我没有找到问题所在