記事ディレクトリ
-
- 1.モールオープンソースプロジェクト
- 2. Hutoolツールライブラリ
- 3. ソースコード分析
-
- 3.1 統合と構成
- 3.2 コアツール
-
- 3.2.1 AnnotationUtil の使用法: アノテーション ツール クラス
- 3.2.2 BeanUtil の使用法: JavaBean ツール クラス
- 3.2.3 CaptchaUtil の使用法: グラフィック検証コード
- 3.2.4 ClassPath 単一リソース アクセス クラス: classPath の下のファイルを検索
- 3.2.5 CollUtil の使用法: 収集ツール クラス
- 3.2.6 Convert の使用法: 型変換ツール クラス
- 3.2.7 DateUtil の使用法: 日付と時刻ツール
- 3.2.8 DigestUtil の使用法: 要約アルゴリズム ツール クラス
- 3.2.9 HttpUtil の使用法: Http リクエスト ツール クラス
- 3.2.10 JSONUtil の使用法: JSON 解析ツール クラス
- 3.2.11 MapUtil の使用法: マップ ツール クラス
- 3.2.12 NumberUtil の使用法: 数値処理ツール クラス
- 3.2.13 ReflectUtil の使用法: Java リフレクション ツール クラス
- 3.2.14 SecureUtil の使用法: 暗号化および復号化ツール クラス
- 3.2.15 StrUtil の使用法: 文字列ツール
- 3.2.16 バリデータの使用法: フィールドバリデータ
- 4. まとめ
1.モールオープンソースプロジェクト
1.1 出典
モール学習チュートリアル、アーキテクチャ、ビジネス、技術的なポイントの包括的な分析。モール プロジェクト ( 50k+star ) は、現在の主流のテクノロジーを使用して実装された電子商取引システムです。Docker コンテナーのデプロイメントを使用した、SpringBoot 2.3.0、MyBatis 3.4.6、Elasticsearch 7.6.2、RabbitMQ 3.7.15、Redis 5.0、MongoDB 4.2.5、Mysql5.7 およびその他のテクノロジーをカバーします。
プロジェクトの github アドレス: github.com
1.2 プロジェクトの移管
Github 上のプロジェクトを gitee に転送して、アイデアのクローンを簡単に作成できます。
具体的な手順は次のとおりです。
1.3 プロジェクトのクローン作成
github は海外に展開されているため、idea は github からのプルにも対応していますが、クローン作成速度が遅すぎるため、前述のように gitee をインポートした後、プロジェクトを idea にクローンすることをお勧めします。
具体的なクローン作成手順は単純すぎて日常的なものなので、読者は自分で作成することも、Baidu で検索することもできます。
2. Hutoolツールライブラリ
API文档
:概要(hutool-codeyun(gitee.com))
hutool开发文档
: Hutool (開発中にニーズに遭遇した場合は、まず自分でドキュメントを確認して印象を掴んでください)
2.1 Hutoolの概要
Hutoolは小規模で包括的な Java ツール クラス ライブラリであり、静的メソッドのカプセル化を使用して、関連する API の学習コストを削減し、作業効率を向上させ、Java を関数型言語と同じくらいエレガントにします。
Hutool のツールとメソッドは、各ユーザーの慎重な職人技から生まれています。基盤となるコードの Java 開発のあらゆる側面をカバーしています。大規模なプロジェクト開発における小さな問題を解決するための強力なツールであるだけでなく、効率化にも役立ちます小規模なプロジェクトの場合。
Hutool は、プロジェクト内の "util" パッケージに代わるフレンドリーな代替ツールであり、開発者がプロジェクト内でパブリック クラスとパブリック ツール メソッドをカプセル化する時間を節約し、不完全なカプセル化によって引き起こされるバグを最小限に抑えながら、開発がビジネスに集中できるようにします。
3. ソースコード分析
mall-tiny-hutool
プロジェクトのソースコードには、開発で一般的に使用されるいくつかのツールキットのみが示されています。示されていないその他のツールキットについては、自分で学ぶことができますhutool开发文档
。ドキュメントは非常に詳細です。
**分析内容:** 以下の分析内容の大部分は図の中で説明されており、外部での説明はあまりありません。
3.1 統合と構成
ソースコードを直接解析し、hutoolに関係する部分のみを解析し、設計業務部分についてはあまり説明しませんので、他の部分については読者の方がご自身でソースコード解析を読んでください。
mall-tiny-hutool
**プロジェクトの起動:**モジュール部分を起動するだけで済みます。
**起動に必要:** mysql5 サービスを開始し、データベースを作成し、テーブルをインポートします (SQL ファイルの場所はプロジェクトと同じディレクトリのdocument
フォルダーにあります)。
**ps:** データベース接続の構成情報を忘れずに変更してください。
3.1.1 依存関係のインポート
pom文件
hutool の関連依存関係を にインポートします。
3.1.2 構成の追加
3.2 コアツール
のswagger接口文档
場合、インターフェイスはすべて でありget请求
、返されるものはすべて成功した操作と null データであるため、あまり多くは表示せず、次にこれらのツール クラスの使用法を理解するために1 回だけ表示します。
下面的例子
これらはすべてツール クラスのほんの一部であり、コードを解析する前にまず公式の開発ドキュメントを読みますが、そのツール クラスを見た場合は、対応する公式ドキュメントを読んで印象を深めておくことをお勧めします。
3.2.1 AnnotationUtil の使用法: アノテーション ツール クラス
注解工具类开发文档定位
:アノテーションツール - AnnotationUtil | Hutool
1、控制层接口
AnnotationUtil ツール クラスは、指定されたクラスのアノテーション情報 (アノテーション リストやアノテーションの属性値など) を取得し、結果を出力するメソッドで使用されます。
2、idea控制台打印的日志信息
3.2.2 BeanUtil の使用法: JavaBean ツール クラス
Bean工具类开发文档定位
: Beanツール-BeanUtil | Hutool
1、控制层接口
2、idea控制台打印的日志信息
3.2.3 CaptchaUtil の使用法: グラフィック検証コード
CaptchaUtil工具类开发文档定位
:概要 | ヒューツール
1、控制层接口
2、生成图形验证码效果
3.2.4 ClassPath 単一リソース アクセス クラス: classPath の下のファイルを検索
ClassPath工具类开发文档定位
:クラスパス リソース アクセス-ClassPathResource | Hutool
1、控制层接口
2、idea控制台打印的日志信息
3.2.5 CollUtil の使用法: 収集ツール クラス
CollUtil工具类开发文档定位
:収集ツール-CollUtil | Hutool
1、控制层接口
2、idea控制台打印的日志信息
3.2.6 Convert の使用法: 型変換ツール クラス
Convert工具类开发文档定位
:型変換ツール class-Convert | Hutool
1、控制层接口
3.2.7 DateUtil の使用法: 日付と時刻ツール
DateUtil工具类开发文档定位
:日時ツール-DateUtil | Hutool
1、控制层接口
3.2.8 DigestUtil の使用法: 要約アルゴリズム ツール クラス
DigestUtil工具类开发文档定位
:ダイジェスト暗号化 - ダイジェスター | Hutool
公式開発ドキュメントには他にも多くの暗号化アルゴリズムがあり、それらについては自分で学ぶことができます。
1、控制层接口
2、idea控制台打印的日志信息
3.2.9 HttpUtil の使用法: Http リクエスト ツール クラス
HttpUtil工具类开发文档定位
: HTTP クライアント ツール クラス-HttpUtil | Hutool
公式開発ドキュメントには他にもhttp クライアントの使用法がたくさんあります。それらについては自分で学ぶことができます。
1、控制层接口
2、idea控制台打印的日志信息
3.2.10 JSONUtil の使用法: JSON 解析ツール クラス
JSONUtil工具类开发文档定位
: JSON ツール-JSONUtil | Hutool
公式の開発ドキュメントには、JSON オブジェクトと JSON 配列の使用法も含まれており、自分で学ぶことができます。
1、控制层接口
2、idea控制台打印的日志信息
3.2.11 MapUtil の使用法: マップ ツール クラス
MapUtil工具类开发文档定位
:マップツール-MapUtil | Hutool
公式の開発ドキュメントにはMapの他の用途も記載されているので、自分で学ぶことができます。
1、控制层接口
3.2.12 NumberUtil の使用法: 数値処理ツール クラス
NumberUtil工具类开发文档定位
:数値ツール-NumberUtil | Hutool
1、控制层接口
3.2.13 ReflectUtil の使用法: Java リフレクション ツール クラス
ReflectUtil工具类开发文档定位
:リフレクションツール-ReflectUtil | Hutool
1、控制层接口
2、idea控制台打印的日志信息
3.2.14 SecureUtil の使用法: 暗号化および復号化ツール クラス
SecureUtil工具类开发文档定位
:暗号化・復号化ツール-SecureUtil | Hutool
1、控制层接口
3.2.15 StrUtil の使用法: 文字列ツール
StrUtil工具类开发文档定位
:文字列ツール-StrUtil | Hutool
1、控制层接口
3.2.16 バリデータの使用法: フィールドバリデータ
Validator工具类开发文档定位
:フィールドバリデーターバリデーター | Hutool
1、控制层接口
2、idea控制台打印的日志信息
4. まとめ
私の印象としては、ビジネスで必要なときに先查看
正式な開発ドキュメントを大まかに理解して、それでも解決しない場合は開発ドキュメントをガイドとして定位到
APIドキュメントを作成してビジネスを完了することができます。
この記事では、Hutool ツール ライブラリを学習するために、実際のプロジェクトから要件を取得し、学習するソース コードと組み合わせて、mall
オープンソース プロジェクトから Hutool を学習しました。私は多くのことを得ることができたと感じています。記事が役に立ちます。
将来的には、このフレームワークを組み合わせて他のテクノロジー スタックも学習する予定です。
盈若安好,便是晴天