削除された文書のSpringBoot Solrのチュートリアルシリーズ

削除された文書の200114-SpringBoot Solrのチュートリアルシリーズ

開始前に何が継続され、現在は再取得して、少なくとも、基本的な動作位置豆腐が補完チュートリアルを検索しない。この部分はデータを削除する方法について説明します

I. 配置

デモを導入する前に、あなたはSolrの環境、ビルドSpringBootプロジェクトをインストールする必要があり、特定の環境構築プロセスは、推奨される参照ドキュメントの詳細には触れません。

ではapplication.yml、赤、Solrの指定されたドメイン名の設定ファイル

spring:
  data:
    solr:
      host: http://127.0.0.1:8983/solr

するとSolrの、私たちのためにいくつかのデータが消去使用する書き込みは、あなたもすることができ、コンソールを介して、書くことができてSolrの190526-SpringBoot高度なバージョンは、ジェスチャーの使用して新規および変更された文書の検索の場合は、このドキュメントを追加します

{
  "id":"1",
  "content_id":1,
  "title":"一灰灰blog",
  "content":"这是一灰灰blog的内容",
  "type":1,
  "create_at":1578912072,
  "publish_at":1578912072,
  "_version_":1655609540674060288},
{
  "id":"2",
  "content_id":2,
  "title":"一灰灰",
  "content":"这是一灰灰的内容",
  "type":1,
  "create_at":1578912072,
  "publish_at":1578912072,
  "_version_":1655609550229733376},
{
  "id":"3",
  "content_id":3,
  "title":"solrTemplate 修改之后!!!",
  "create_at":1578912072,
  "publish_at":1578912072,
  "type":0,
  "_version_":1655609304941592576},
{
  "id":"4",
  "content_id":4,
  "type":1,
  "create_at":0,
  "publish_at":0,
  "_version_":1655609305022332928},
{
  "id":"5",
  "content_id":5,
  "title":"addBatchByBean - 1",
  "content":"新增一个测试文档",
  "type":1,
  "create_at":1578912072,
  "publish_at":1578912072,
  "_version_":1655609304836734976},
{
  "id":"6",
  "content_id":6,
  "title":"addBatchByBean - 2",
  "content":"新增又一个测试文档",
  "type":1,
  "create_at":1578912072,
  "publish_at":1578912072,
  "_version_":1655684018701598720
}

II。[削除]

我々はまだ使用しSolrTemplate、それはSolrのすべての基本的な操作を統合し、Solrの正切除調査を操作します

1. [削除]主キー

この場合は、主キーIDを削除一括削除をサポートするために、あなたが必要であることに注意してsolrTemplate.commit("yhh");、変更をコミットするために、この行を

private void deleteById() {
    solrTemplate.deleteByIds("yhh", Arrays.asList("4"));
    solrTemplate.commit("yhh");
}

2.削除クエリ

上記の正確な削除のために主キーが、限られた適用を削除し、削除クエリの方法は、以下に説明、クエリデータが削除されて満足させます

private void deleteByQuery() {
    SolrDataQuery query = new SimpleQuery();
    query.addCriteria(Criteria.where("content").startsWith("新增"));
    solrTemplate.delete("yhh", query);
    solrTemplate.commit("yhh");
}

上記の単純なクエリ、削除コンテンツのコンテンツ提供新增Solrのクエリジェスチャー詳細に関する問い合わせは、ジェスチャーを使用しているときに次の記事として、最初に文書を

3.テスト

次に、上記の二つのケースをテスト

まず、我々は削除のためのデータの比較の前と後に、すべてのドキュメントを出力する方法を提供します

private void printAll(String tag) {
    System.out.println("\n---------> query all " + tag + " start <------------\n");
    List<DocDO> list = solrTemplate.query("yhh", new SimpleQuery("*:*").addSort(Sort.by("content_id").ascending()), DocDO.class)
                    .getContent();
    list.forEach(System.out::println);
    System.out.println("\n---------> query all " + tag + " over <------------\n");
}

次は、メソッド呼び出しです

@Autowired
private SolrTemplate solrTemplate;

public void delete() {
    printAll("init");
    this.deleteById();
    this.deleteByQuery();
    printAll("afterDelete");
}

次のように出力結果は、IDが4,5,6のように除去されます

---------> query all init start <------------

DocDO(id=1, contentId=1, title=一灰灰blog, content=这是一灰灰blog的内容, type=1, createAt=1578912072, publishAt=1578912072)
DocDO(id=2, contentId=2, title=一灰灰, content=这是一灰灰的内容, type=1, createAt=1578912072, publishAt=1578912072)
DocDO(id=3, contentId=3, title=solrTemplate 修改之后!!!, content=null, type=0, createAt=1578988256, publishAt=1578988256)
DocDO(id=4, contentId=4, title=null, content=null, type=1, createAt=0, publishAt=0)
DocDO(id=5, contentId=5, title=addBatchByBean - 1, content=新增一个测试文档, type=1, createAt=1578988256, publishAt=1578988256)
DocDO(id=6, contentId=6, title=addBatchByBean - 2, content=新增又一个测试文档, type=1, createAt=1578988256, publishAt=1578988256)

---------> query all init over <------------


---------> query all afterDelete start <------------

DocDO(id=1, contentId=1, title=一灰灰blog, content=这是一灰灰blog的内容, type=1, createAt=1578912072, publishAt=1578912072)
DocDO(id=2, contentId=2, title=一灰灰, content=这是一灰灰的内容, type=1, createAt=1578912072, publishAt=1578912072)
DocDO(id=3, contentId=3, title=solrTemplate 修改之后!!!, content=null, type=0, createAt=1578988256, publishAt=1578988256)

---------> query all afterDelete over <------------

II。その他

0シリーズボーエン&ソースプロジェクト

ボーエンシリーズ

ソースプロジェクト

1.灰色のブログ

本は良いとして、上記、により制限され、個人能力に、純粋な言葉の一つであるされていない、すべてを信じて、それは避けられない欠落やミス、などのバグを見つけたり、より良い提案を歓迎批判と寛大な感謝されていがあります

ここでは灰色個人のブログ、ブログ内のすべての研究と仕事を記録し、周りに行くことを歓迎

灰色のブログ

公開された206元の記事 ウォン称賛57 ビュー160 000 +

おすすめ

転載: blog.csdn.net/liuyueyi25/article/details/103998951