web-dev-qa-db-ja.com

SpringまたはHibernateの最初に何を学ぶべきですか?

私はStrutsの学習を始めたばかりで、Javaプログラマーとして良い仕事のために市場性を高めようとしています。次の決定は、SpringとHibernateのどちらを学習するかを選択することですか?

また、皆さんは私が良いことをするための提案やヒントがありますか?前もって感謝します!

36
ajushi

春を学ぶことをお勧めします。基本だけを学び、次にHibernateを学ぶためにdoになると、Hibernateを使いやすくするすべてのSpringヘルパーを利用できるようになります。

また、Springはデータアクセス部分だけでなく、多くのレイヤーで役立つという点もあります。

51
Jon Skeet

SpringとHibernateは2つの非常に補完的なテクノロジーであり、ニーズに応じて、両方を使用することも、どちらも使用しないこともあります。しかし、これらのフレームワークの両方が依存しているファンダメンタルズは100%市場性があり、さらに重要なことに、熟練した専門家には必要です。

リレーショナルデータモデリング、リレーショナルデータベース設計、およびトランザクション処理に関する基本的な知識を最初に取得しない限り、Hibernateを学習する価値はほとんどありません。したがって、これらはHibernateの前提条件である必要があります。

デザインパターン、依存関係の注入、およびアプリケーションの設計に関する基本的な知識を最初に取得しない限り、Springを学習することにはほとんど価値がありません(一般に、アプリケーション層、クラスとパッケージの依存関係、MVCなどのことを理解する必要があるようです)。これはStrutsを介して)、セキュリティおよびWeb標準、そしてもちろんOODの基礎)。

両方を学ぶことで、市場性はありませんが、Java(およびJavaだけではない)アプリケーションの大部分に取り組むことに自信があり、快適である、少なくとも非常に堅実な専門家になります。

20
topchef

Hibernateは基本的な使用スキルを習得するのがかなり簡単で簡単で、おそらくもっと重要なこととして、EJB3が標準になりつつあると思います。

Springは外部テクノロジーであり、正式にはJ2EEの一部ではないため、2番目に実行することは理にかなっている可能性があります。また、より多くのファセットがあり、本当に良い本が必要です。

5
Uri

SpringはHibernateよりもはるかに大きく、より一般的に適用できます。決定は、学習曲線の長さと、完了時に得られるユーティリティとの間のトレードオフです。

StrutsとHibernateの両方と共存できるため、Springをお勧めしますORどちらか一方の代替手段(Spring Web MVCおよびSpring JDBC)を提供します。

SpringはJava EE設計に有益な効果をもたらします。それから始めてください。

2
duffymo

MVCフレームワークとそのフレームワークでORMを使用する方法を学ぶことを目的とする場合、学ぶための論理的な方法はSpring、次にHibernateです。私の意見では、そうすればコンセプトを簡単に理解できるようになります

2
Paras

私は最初に春に行きます。 Springには、依存性注入、アスペクト指向プログラミング、JDBCヘルパークラス、MVCフレームワーク全体など、さまざまな便利な要素があります。 Springは、最初のアプリケーションで必要なだけ使用できます。リファレンスドキュメントは非常に優れています。 Springを1冊も購入しなくても、Springを簡単に学ぶことができます。

1
cliff.meyers

最初にHibernateだけを学び、次にSpringがそれをはるかに簡単にする方法を学びました。

1
Gary Kephart

私は最近Strutsに行くつもりはありません。すでにSpringを検討している場合は、Spring MVCも確認する必要があります。特に、新しいアノテーションベースのコントローラーは非常に使いやすいです。

Hibernateの前にSpringを学習することをお勧めします。コアやおそらくWebMVCにこだわると学習がはるかに容易になるため、これをお勧めします。前回のリリースでSpringはかなり成長しましたが、コアはまだシンプルで理解しやすいものです。

Hibernateはもっと複雑です。私は、HibernateのようなORMの一般的な目的を理解し、Hibernateアノテーションを使用してHibernateを構成し、Spring/Hibernate Integrationに直接進むことをお勧めします。ドメインにいくつかの基本タイプ以上がある場合は、 GenericDAOパターン も確認できます。

1
fforw

ここでも同じです。Springよりも最初に休止状態を学びました。正しい順序だと思います。YouTubeからいくつかの小さな例を実行し、休止状態を構成する方法を確認し、セッションを作成し、データベースでいくつかのトリックを実行します。少なくとも基本的なことを行います。次に、HibernateでSpringを構成する方法を確認します。

0
karim karimm

最初にHibernateを学びました。 groovyを使用してさまざまなHibernateの例を試しました。その後、SpringとそのHibernateのサポートについて学びました。本当に面白い旅をしたと思います。

以下は、Struts + Spring + Hibernateアプリケーションの例です。フロントエンドのStruts、中間層のSpring、永続層のJPA/Hibernate。

http://struts.Apache.org/2.0.11/docs/struts-2-spring-2-jpa-ajax.html

0
Manoj

私はあなたがより良い答えを得るために簡単にあなたのプロフィールを共有するべきだと思います

ただし...休止状態と春の両方が暑く、エンタープライズアプリケーションに投稿されたすべてのジョブ要件でそれらを見つけることができるため、選択の選択に関する限り、正しい方向に進んでいます。

IMHO-hibernateはSpringよりトリッキーです。その理由は、Springのアーキテクチャにより、コードへの侵襲性が最も低いため、習得するAPIがほとんどありません。したがって、Springでコーディングするには、Javaを超えるコードを実際に作成する必要はありませんが、Hibernateをコーディングするには、Hibernate APIとHibernateプログラミングの基本事項を理解する必要があります。Hibernateの基本は習得は簡単ですが、トリックや雑学を学ぶには時間がかかります

私が採用マネージャーでhibnernateとSpringを使用している場合は、SpringよりもHibernateの方が優れている方を採用します。Springに関しては、貢献するプログラマーとして、ほとんど心配する必要はありません。おそらく、アプリケーションには既にフレームワークがあり、コントリビューションをプラグインする必要があります。

しかし、休止状態でコーディングするには、前に言ったように、これについての経験がある方がいいです

シモンズ:これについては誰もが異なる見方をしていることを知っています。おそらく混乱するかもしれません。プロフィールを少し共有すると、人々がより良いアドバイスを提供できるようになると思います。幸運を !!!

0
RN.

両方のテクノロジーが必要な場合は、Spring Liveで必要なすべてを実行できます。私はその技術を完全にゼロから学び始めました:)

0
zaletniy

両方を同時に学ぶことを検討します。 SpringとNHibernateはどちらも、大きな学習曲線を持つ大きなフレームワークです。それに慣れ、上手になるには、勉強と実験の時間が必要です。両方のフレームワークで忙しいときは、最初にそれらの最も有用な部分に自動的に焦点を当てます。最初に重要な部分を学ぶと、学習曲線が急になります。

0
Paco

RDBMSの基本であるSpringを学習してから、Hibernateに進むと、学習が容易になると思います。

0
Pradeep Simha