Java はオープン ソースであり、多くのフレームワークがあります。これらのフレームワークは、特定の問題を解決し、開発効率を向上させ、コードの複雑さを簡素化します。現在、誰もが一般的に使用している多くの主流フレームワークに加えて、多くの企業が独自のフレームワークを使用することになります。社内でいくつかの内部フレームワークを定義しますが、学習者としては、まず Javaweb がどのようなフレームワークを学習する必要があるかを理解する必要があります。
「ボリューム」が小さい単一アプリケーション プロジェクトの場合:
ORM タイプのフレームワーク、多くの Java Web プログラムデータの永続化にはリレーショナルデータベースを使用する必要があるため、このようなデータベース操作が必要なフレームワーク、つまりJDBCをカプセル化したORMフレームワークを習得する必要がありますが、現在主流となっているのはSQLベースのmybatisフレームワークであり、これは、学習と使用が容易な軽量の ORM フレームワークであり、同じタイプのフレームワークに Hibernate があります。
MVC フレームワークでは、MVC はプログラムを論理的にビュー層、コントロール層、モデル層に分割し、各層が独自の役割を果たし、相互依存ではなく相互呼び出しの関係にあります。このモデルは、要件の変化やソフトウェアのアップグレードにうまく適応できます。現在最も広く使用されている MVC フレームワークは Spring MVC フレームワークであり、このフレームワークには明確な役割分担、強力かつ直接的な構成方法、効率的なバインディングと検証など、多くの利点があります。以前の Struts2 フレームワークも MVC フレームワークです。
Spring フレームワーク、実際、多くの Java 実践者は Spring を避けることができません。Spring ファミリには多くの「ツール」があります。プロセス指向からオブジェクト指向に変わることは、プログラミングの考え方にとって大きな進歩です。プログラムはますます複雑になり、オブジェクトはますます多くなり、これらのオブジェクトの効率的な「管理」とアプリケーションがますます重要になってきています。Spring の IoC は、オブジェクトの作成と「管理」を Spring コンテナに引き渡すことです。制御の反転を達成すると同時に、値を注入するさまざまなメソッド (DI) を提供します。これにより、作業が大幅に改善され、簡素化されます。これは、JavaWeb が学ぶ必要がある Spring の IoC/DI です。プログラムのビジネスがより重要な場合、コア機能の完成に加えて、完全なインジェクション例外処理、ロギング、トランザクション処理などの従来の機能も必要となり、これらの従来の操作は比較的エネルギーを消費しますが、SpringAOP (アスペクト指向プログラミング) はこの問題を解決します。
Javaweb は、いくつかのフロントエンド フレームワークを学習する必要があります。特に、質問で言及されているデータ インターフェイスが作成されている場合、または単純なバックエンドがある場合、プロジェクトが次のような場合は、フロントエンド フレームワーク jQuery を学習する必要があります。効率性を考慮してフロントエンドとバックエンドを分離する必要がある場合は、vue などのフレームワークを学ぶことができます。
大量のデータと高い同時実行性を備えた分散プロジェクトの場合、このタイプのプロジェクトの特徴は、ダブル イレブン アリババなど、前述したように処理する必要がある大量のデータです。 12306 チケットの取得などの注文データを処理する必要があります。
Redis は、クエリ効率を向上させるキャッシュ データベース フレームワークです。このフレームワークは、データ読み取り効率を向上させるために単一のアプリケーションで使用することもできます。まず、リレーショナル データベースから Redis を通じてデータをキャッシュに保存し、次にキャッシュからデータを読み取ります。データの取得速度は、ハードディスクから直接読み取るよりもはるかに高速です。また、Redis はクラスター内でマスター/スレーブ サーバーを構成することもできるため、非常に便利です。同じ種類のデータは、 memcached フレームワークとも;
分散型の中でも、サービス クラスターでの負荷分散は特に重要です。Nginx は、複数の負荷分散アルゴリズムをサポートする高性能 HTTP およびリバース プロキシ サービス フレームワークです。
メッセージキューフレームワーク:RabbitMQ、ActiveMQ、RocketMQなど 電子商取引システムでは、注文決済後にポイント変更などの操作を行う必要があり、その操作量は非常に多く、当然現実的ではありませんポイント変更完了後に決済が成功したことをユーザーに通知するため、この時点ではポイントの変更操作はメッセージキューに任せて完了します。
検索フレームワークは、検索の効率を向上させるために、検索インデックス ライブラリと中国語検索単語の分割を作成するために、Solr フレームワークを使用できます。これは、Solr フレームワークで使用されるのと同じタイプの ElasticSearch
分散ファイルです。ファイル使用 システム フレームワーク Fastdfs
Spring boot フレームワークは、Spring の複雑な構成を簡素化し、Thymeleaf テンプレートを提供します。多くのマイクロサービスは Springboot に基づいています;
マイクロサービス フレームワークは、アプリケーションをいくつかに分割します。個別に提供された後、高い同時実行性と大量のデータ処理に適していますが、マイクロサービスの管理も非常に重要です。現在、サービス登録とサービス監視に基づくフレームワークには、Dubbo Zookeeper と SpringCloud が含まれます。 SpringCloudHystrix、SpringCloudZuul、SpringCloud Config、SpringCloud ZipKin、SpringCloud Sleuth など;
その他のフレームワークには、ロギング、認証用の log4j フレームワーク、認可用の Roku フレームワークなど、プロジェクト固有の要件に基づいた多くのフレームワークがあります。 、ワークフロー処理などのActiveフレームワーク。
以上がJavaでは現在どのフレームワークが人気ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。