web-dev-qa-db-ja.com

Java WebアプリケーションをJava EE 6で作成するために学ぶべきことは?

私の目標は、Webアプリケーションを作成することです!

書籍「Headfirst-Java」および「Headfirst-Servlets and JSP」を読み終えました。

このトピック(Webアプリケーション)は非常に大きく複雑なので、次に何を学ぶべきかを尋ねたいと思います。 Java EE、EJB、JSF、JPA、Glassfishな​​どのキャッチワードを読むと、緊張しすぎますが、あきらめません。

学習を進める方法を教えてください。次のような本を手に入れる必要があります: _Java EE 6 Platform with GlassFish 3:初心者からプロフェッショナルまで いくつかのオンラインチュートリアル?

ありがとう!

103
creativz

これが議論の余地があることを知っていたとしても、私のアドバイスはJava EE 6のみから始めることです。そのため、GlassFish v3を入手して、本を入手してください GlassFish 3:初心者からプロフェッショナルへEE 6プラットフォームの開始Java または Java EE 6チュートリアル 。私の意見では、本(私が読み始めたので、私が話していることを知っています)は、「すべて」があなたにとって新しい場合に望ましいかもしれないより多くのガイダンスを提供します(Java EEプラットフォームとそのAPIおよびアプリケーションを構築、デプロイする環境)。

今、私が言ったように、のようなことを言う声をすでに聞くことができます」Java EEは重い、代わりにSpringを使用し、プレゼンテーション層のためにStrutsまたはWicketまたはStripeを学び、永続性のためにHibernateを学びます私はORMが好きではなく、代わりにiBatisまたはストレートJDBCを使用し(Springではクールで、Springはとてもクールです)、Tomcat(そしてJettyではない理由)またはJBossを使用するか、これをすべて忘れて行きますGrails、およびbla bla bla ...」

しかし、これが本当にあなたを助けているとは思いませんし、メンタリングやガイダンスがなければ(そして、すべての組み合わせをカバーする時代遅れではないユニークなリソースは見つかりません)、これは初心者にとって非常に紛らわしいに違いありません。

Java EE 6は、以前のバージョンのJava EEよりも大幅に改善されていると思うので、本当にNiceあらゆるニーズに対応する標準API(サーブレット3.0、JSF 2.0、JPA 2.0、EJB 3.1 lite、Bean Validation 1.0、CDIなど)学習は、これはすでに大きなタスクであるため、どこかから始める必要があるため、Java EE 6に焦点を当てます現時点では他のフレームワークのみを忘れてください。より正確には、 Java EE 6 Web Profile から始めます(さらに先に進みたい場合は追加します)。

これを行うことにより、1)始めて真新しいことを学び、2)他のすべてのフレームワークおよび/またはツールに時間をかけて、適応し、それらの必要性がまだあることを証明します。そして、もしあれば、それはまだ生存者を実験する時間であり、あなたは彼らが存在する理由をよりよく理解することができるでしょう。

172
Pascal Thivent

私のアドバイス1 本を読むのをやめて、ものの実装を開始することです。私の経験では、本の学習は実際に物事を行うことによって得られる知識の代わりに貧弱です。


1-コンテキスト:これは、トピックに関する2冊の本を読み終えたばかりで、読みたい本を探している人へのアドバイスです。実際には、読むことと行うことのバランスを取る必要があります。特に、特定の問題がある場合は解決しようとしています。

28
Stephen C

Java EE 6は本当に素晴らしいです。唯一の問題は、約2週間前のものであり、現在その機能を提供しているコンテナはGlassfishのみであるということです。

私はGlassfishに対して何もしていません、私はそれをあちこちで使います、いくつかの生産インスタンス、私は製品とプロジェクトが大好きです。

つまり、Java EE 6は、Java EE 5に戻って翻訳されません。新しいBeanタイプ、JPA 2など。それらはありません。

したがって、Java EE 6を最初に学習することにより、単純に1つのコンテナーに制限されます。さらに多くの機能が追加されますが、まだここにはありません。

Tomcat、JBoss、OpenEJB、Glassfish、Jetty、Resin、Geronimoなどはすべて、Java EE 5仕様(少なくとも、サポートする仕様の一部であり、Tomcatはたとえば、EJBがあります)。

Java EE 5に持ち越されなかったものはJava EE 6 Java EE 6はいくつかの非常に古い側面をオプションにし、とにかく今日はまったく学ばないものを作成しました。Java EE 6は、いくつかのJavaパッケージ化、特にEJB Lite)。

学ぶJava EE 5今すぐ学習して、さまざまな環境で学習したものを実際に適用できるようになりました。学習するJava EE 6今ではなく、学んだことの多くを使用できるようになります。

知っておくべきことを教えてくれる本はありません。たとえば、サーブレットはすてきな基盤ですが、数ページまたはエンドポイントよりも大きい場合は、多くのサードパーティフレームワークのいずれか、またはJSFを使用する必要があります。その。

Java EE 5チュートリアルは基礎を崩すのが得意です。私の主な不満は、ソースコードを表示しないことです。むしろ、ダウンロードして実行することを期待しています。チュートリアルで説明したように、Head Firstの本はかなり優れていることがわかりました。

Webプログラミングでは、生のサーブレットはリクエスト/レスポンスサイクルを理解するだけで十分重要ですが、サードパーティのフレームワークに飛躍するために深く理解する必要はありません。

私は、アクションフレームワーク(コンポーネントフレームワークに対して)のストライプの大ファンであり、利用可能な単一のストライプの本は優れています(それを選択するのは簡単な選択です)。

コンポーネントフレームワークの本を提案することはできません。実際、すぐに推奨することはできません。コンポーネントフレームワークは、HTTPコアの要求/応答構造を完全に埋めます。彼らは理由のためにそれらを埋め、それらを埋めることによって価値を得るが、私はあなたがこれらの概念を早期にしっかりと理解する必要があると思う。そのため、最初にコンポーネントフレームワークを学習することはお勧めしません。

JAX-RS RESTフレームワーク、Java EE 6に含まれるが、Java EE 5または任意のサーブレットに容易にインストール可能おそらく、それはサーブレット3.0であるべきだったはずですが、そのための本は知りません。

9
Will Hartung

Tomcatについては、Webサイトの manual を読んでください。とても良いです。特に、Webアプリの編成と展開に関する最初の数章、およびサーブレットAPIとJSPに関する章。

Springについては、Manningの書籍Spring in Actionは非常に優れています。 Hibernate(Manning book)についても同様ですが、Hibernateはほとんどwebappsの範囲外です。あなたの電話。

Wicket-マニング本も。しかし、実際には、フロントエンドコードをJavascriptで記述するだけです。 IMO、痛みが少なくなります。

5
danben

他のテクノロジーについてはコメントしませんが、Hibernateを学びたい場合は、Cameron McKenzie(www.hiberbook.com)による「Hibernate Made Easy」を入手してください。それはあらゆるペニーの価値があります。その本を2日で(文字通り)読み終えることができます。それは小説のようなものであり、最終的には、HibernateをSemi-Proのように扱うことになります。

3
motiver

Jpassion は、学ぶための優れたビデオと資料を提供しますJava EE 6およびその他のもの。

また、アプリケーションの例を見る必要があります。

  1. ペットストア 。 Mavenが必要です。Glassfishをお勧めします。前述の book を書いたAntonio Goncalvesによって書かれました。
  2. JBoss チケットモンスター 。 MavenとJbossが必要です Forge 。 Jbossにデプロイします。
3
jacktrades

JavaでWebアプリケーションを作成するだけの場合は、 Play Framework を確認してください。 「Ruby on Rails」に似ています

2
Apeirogon Prime