Java で一般的に使用されるテクノロジ スタックには、1. JDK、2. Web フレームワーク、3. Web コンテナ、4. ORM フレームワーク、5. Spring、6. データベース、7. 検索エンジン、8. 戻る-テンプレート エンジンの終了; 9. ワークフロー; 10. Kafka、RocketMQ、RabbitMQ などの他の言語ミドルウェア。
#このチュートリアルの動作環境: Windows 10 システム、Java バージョン 8.0、Dell G3 コンピューター。
Java で最も一般的に使用されるテクノロジ スタックは何ですか?
Java 開発で一般的に使用されるテクノロジ スタックの一覧
1. はじめに
最近、多くの人が私がよく使用する Java 開発テクノロジ スタックについて個人的に質問するので、今日はよく使用される Java テクノロジ スタックについてまとめます。
2. JDK
ほとんどの JDK バージョンは 8 に移行されました。11 を使用している人は時代を先取りしています。LTS バージョンを探してください。運用環境では 9、10、12、13、および 14 を使用しないでください。不要な商業紛争を避けるために、Oracle JDK と Open JDK の間で Open JDK を使用することをお勧めします。 Amazon Corretto と Alibaba Dragonwell はどちらも優れています。 7 上記については互換性の問題を過度に考慮する必要はありませんが、移行前にテストすることをお勧めします。
2. Webフレームワーク
主流はやはりServlet系のSpring MVCです。構造体は古いプロジェクトでのみ使用してください。レスポンシブ フレームワーク Spring Webflux が登場し始めており、試してみたり、質問したりする人が増えています。将来の方向性を掴みたいと考えている学生はぜひ学んでみてください。
3. Web コンテナ
現時点では依然として Tomcat が最も人気があるはずですが、近年では Red Hat の Undertow も人気が出てきています。Jetty は実際の運用では利点がなく、テストに使用される可能性があります。有能な企業は、自社で高パフォーマンスの Web コンテナを実装するために Netty を選択するでしょう。
4. ORM フレームワーク
現在、Mybatis は依然として中国のリーダーですが、海外には関連するチュートリアルがほとんどありません。次に JPA システムです。これには主に Spring Data JPA と Hibernate が含まれます。興味のある方はJOOQをチェックしてみてください。リアクティブ プログラミングの台頭により、JDBC には R2DBC という潜在的なライバルが存在し始めており、その動向に引き続き注意を払う必要があります。
5. Spring
Java が Spring と切り離せないことに関して言えば、Spring エコシステムの優位性は依然として揺るぎません。現時点では、単一アプリケーションは依然として Spring Boot に支配されており、マイクロサービス Spring Cloud システムは依然として絶対的な優位性を持っています。しかし、あなたのプロジェクトは本当にマイクロサービスに適しているのでしょうか? Spring は近年、応答性を重視し始めており、Webflux、R2DBC、そして最近では RSocket が、Spring によって正式に推進されている応答性の高いフレームワークまたはプロトコルの一部です。したがって、応答性を知識リストに含める必要があります。
6. データベース
ほとんどは Mysql ですが、MSSQL や PostgreSQL もよく使われます。国産クラウドネイティブデータベースTiDBの発展を過小評価することはできません。文書データベースである Mongo には、過去 2 年間でいくつかのセキュリティ問題がありましたが、依然としてこの分野をリードしています。インメモリデータベース Redis は今でもキャッシュの分野で重要な位置を占めており、Memcached や Hazelcast も頻繁に視野に入れられます。
7. 検索エンジン
検索エンジンの分野では、Lucene とその 2 つの派生製品である Solr と ElasticSearch が絶対的な優位性を持っており、ElasticSearch の方が活発です。
8. バックエンド テンプレート エンジン
フロントエンドとバックエンドの分離が普及した現在、テンプレート エンジンの存在スペースは再び圧縮されています。私はコードジェネレーターに最もよく使用します。これらはもうほとんど使用されず、Freemark と Velocity Thymeleaf について言及されることはますます少なくなります。
9. ワークフロー
最も一般的に使用され、よく知られているものは、Activity と Flowable です。
10. その他の言語に依存しないミドルウェア
メッセージ キューは主に Kafka、RocketMQ、RabbitMQ です。古い ActiveMQ は衰退し始めています。Yahoo が寄付した Pulsar の理由はわかりません。 Apache は動物園の飼育員ほど人気がありません。 Nginx は、依然として高性能 Web サーバーおよびプロキシ サーバーの第一の選択肢です。
これらは、Java で現在一般的に使用されているテクノロジ スタックに関する私の見解と意見の一部です。
推奨学習: 「Java ビデオ チュートリアル 」
以上がJava で最も一般的に使用されるテクノロジ スタックは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。