mongoHelperは、spring-data-mongodbに基づく拡張ツールキットであり、CRUD操作を簡素化し、jpaのようなデータベース操作を提供します。
従来のリレーショナルデータベースとその周りに構築されたormには、プロジェクト開発における多くの困難な問題点があり、mongodbなどの文書化されたデータベースの出現により、プロジェクト開発におけるsqlデータベースの多くの問題点が完全に解決されます。mongodb4.0以降それは事務をサポートし、エンジニアリングプロジェクトで完全に使用することができます。spring-data-mongodbはすでにmongodbの操作の一部をカプセル化していますが、それでも十分ではありません。QueryandCriteriaの操作にはまだ比較的大きな制限があり、sql操作とsql ormに慣れている人にとっては、使用規則はまだあります。少しぎこちない。mongoHelperはさらにspring-data-mongodbをカプセル化し、mysqlにはあるが、フィールドのデフォルト値などのmongodbにはない機能を補足し、使いやすくし、リレーショナルデータベースormライブラリに近づけ、多くの簡単なプロジェクト管理を追加します。関数。
mongoHelperを使用した後、ほとんどのmysqlormと同様にクエリページングステートメントをカプセル化することができます。
public Page search(ページページ、文字列ワード、整数型){ CriteriaAndWrapper CriteriaAndWrapper = new CriteriaAndWrapper(); if(StrUtil.isNotEmpty(word)){ criteriaAndWrapper.and(new CriteriaOrWrapper()。like(User :: getName、word).like(User :: getPhone、word)); } if(type!= null){ criteriaAndWrapper.eq(User :: getType、type); } page = mongoHelper.findPage(criteriaAndWrapper、new SortBuilder(User :: getCreatTime、Direction.DESC)、page、User.class); 戻るページ; }
単一テーブル操作ステートメントがシンプルになりました
- IDで削除:mongoHelper.deleteById(String、Class <?>)
- 条件による削除:mongoHelper.deleteByQuery(Criteria、Class <?>)
- すべてクエリ:mongoHelper.findAll(Class)
- クエリの数:mongoHelper.findCount(Class <?>)
- IDによるクエリ:mongoHelper.findById(String、Class)
- 条件に基づくクエリ:mongoHelper.findListByQuery(Criteria、Class <?>)
- 条件に従ってクエリとページを作成します:mongoHelper.findPage(Criteria、Page、Class <?>)
- 挿入:mongoHelper.insert(Object)
- 挿入または更新:mongoHelper.insertOrUpdate(Object)
- IDに従って更新:mongoHelper.updateById(Object)
- idに従ってすべてのフィールドを更新します:mongoHelper.updateAllColumnById(Object)
- 条件に従って最初の項目を更新します:mongoHelper.updateFirst(Criteria、Update、Class <?>)
- 条件に基づいてすべてのアイテムを更新します:mongoHelper.updateMulti(Criteria、Update、Class <?>)
クエリステートメントの印刷もフォーマットおよび標準化されており、データベースクライアントに直接配置して実行できます。
db.admin.find({ "$ and":[ { "name":{ "$ regex": "^。* ad。* $"、 "$ options": "i" } } ] })。projection( { "name":1 })。sort({ "id":-1 });
この更新内容
1.Lambdaを使用してフィールド名を取得する方法を追加します
2. springBoot2.3.0のサポートを追加します
3.いくつかのバグを修正します
コードアドレス:https: //gitee.com/cym1102/mongoHelper