Czego się nauczyć przy tworzeniu aplikacji internetowych Java w Java EE 6? [zamknięte]

Moim celem jest tworzenie aplikacji internetowych!

Skończyłem czytać książki "Headfirst-Java" i "Headfirst-Servlets i JSP".

Ponieważ ten temat (aplikacje internetowe) jest tak duży i skomplikowany, chciałbym zapytać, czego powinienem się później nauczyć. Czuję się przeciążony, gdy czytam hasła takie jak Java EE, EJB, JSF, JPA, Glassfish ... ale nie poddam się.

Czy ktoś może mi powiedzieć, jak mam kontynuować naukę? Czy powinienem wziąć taką książkę?: początek Java EE 6 platforma z GlassFish 3: od nowicjusza do profesjonalisty Czy powinienem po prostu zrobić kilka samouczków Online?

Dzięki!

Author: Will, 2009-12-25

7 answers

Nawet jeśli Wiem, że będzie to kontrowersyjne, radzę zacząć od Java EE 6 tylko. Tak więc, chwyć GlasshFish v3 i albo Zdobądź książkę rozpoczynającą platformę Java EE 6 od GlassFish 3: od nowicjusza do profesjonalisty lub postępuj zgodnie z Java EE 6 tutorial . Moim zdaniem książka (którą zacząłem czytać, więc wiem, o czym mówię) zawiera więcej wskazówek, które mogą być lepsze, jeśli "wszystko" jest nowe dla ciebie (obejmuje zarówno platformę Java EE, jak i jej API i środowisko do budowania, wdrażania aplikacji).

Teraz, jak powiedziałem, już słyszę głosy mówiące takie rzeczy jak "Java EE jest ciężka, użyj Springa zamiast, naucz się Struts lub Wicket lub paski dla warstwy prezentacji, naucz się Hibernate dla wytrwałości, lub nie, ponieważ nie lubię ORM, użyj iBatis lub straight JDBC zamiast (zobaczysz, jest cool ze sprężyną, wiosna jest taka coool), i użyj Tomcat (i dlaczego nie Jetty), lub JBoss, lub po prostu zapomnij o tym wszystkim i idź do Grails, i bla bla bla...".

Ale nie sądzę, że to naprawdę pomaga i, bez mentoringu lub wskazówek (i nie znajdziesz nieaktualne unikalne zasoby obejmujące wszystkie kombinacje), to musi brzmieć bardzo mylące dla początkujących.

Tak więc, ponieważ uważam, że Java EE 6 jest dużym ulepszeniem w stosunku do poprzednich wersji Java EE, ponieważ zapewnia naprawdę ładne standardowe API dla wszystkich Twoich potrzeb (Servlet 3.0, JSF 2.0, JPA 2.0, EJB 3.1 lite, Bean Validation 1.0, CDI, itd.), ponieważ wszystkie te API są bardziej niż przyzwoite, ponieważ nie ma nic złego w ich nauce, ponieważ jest to już duże zadanie, ponieważ musisz gdzieś zacząć, skupiłbym się tylko na Java EE 6 i na razie zapomniał o innych frameworkach. Dokładniej, chciałbym zacząć od Java EE 6 Web Profile (a następnie dodać rzeczy, jeśli chcesz iść dalej).

Robiąc to, 1) zaczniesz i nauczysz się zupełnie nowych rzeczy i 2) dasz trochę czasu wszystkim innych frameworków i / lub narzędzi służących do adaptacji i udowodnienia, że nadal istnieje taka potrzeba. A jeśli tak, to nadal będzie czas na eksperymentowanie z ocalałymi i będziesz w stanie lepiej zrozumieć, dlaczego istnieją.

 170
Author: Pascal Thivent,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-12-25 04:46:12

Moja rada1 to przestać czytać książki i zacząć coś wdrażać. Z mojego doświadczenia wynika, że nauka książki jest słabym substytutem wiedzy, którą można uzyskać, robiąc rzeczy.


1 - kontekst: jest to rada dla kogoś, kto właśnie skończył czytać dwie książki na ten temat.

 27
Author: Stephen C,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-07-21 21:52:02

Java EE 6 jest naprawdę niesamowita. Jedynym problemem jest to, że ma około 2 tygodni, a obecnie jest tylko 1 pojemnik oferujący jego funkcje-Glassfish .

Nie mam nic przeciwko Glassfish, używam go wszędzie, kilka instancji produkcyjnych, uwielbiam produkt i projekt.

To powiedziawszy, szczegóły Java EE 6 nie tłumaczą się z powrotem do Java EE 5. Niektórzy tak, wielu tak, ale Profil www, Servlet 3.0, nowe typy fasoli, JPA 2 itp. To nie są tam.

Więc, ucząc się Java EE 6 najpierw, po prostu ograniczasz się do jednego kontenera. Nadchodzą kolejne, ale jeszcze ich nie ma.

Tomcat, JBoss, OpenEJB, Glassfish, Jetty, Resin, Geronimo itp. wszystko działa dobrze ze specyfikacją Java EE 5(przynajmniej te części specyfikacji, które obsługują, na przykład Tomcat nie ma EJB).

Nie przychodzi mi do głowy nic w Java EE 5, co nie zostało przeniesione do Java EE 6. Java EE 6 sprawiła, że niektóre bardzo stare aspekty były opcjonalne, i tych, których i tak byś się dzisiaj nie nauczył. Java EE 6 sprawiła, że niektóre rzeczy Java EE 5 były jeszcze łatwiejsze (w szczególności opakowanie, na przykład EJB Lite).

Naucz się Java EE 5 Teraz, Aby móc zastosować to, czego się uczysz w różnych środowiskach, a raczej, że uczenie się Java EE 6 teraz i odkrywanie, że nie będziesz w stanie wykorzystać wielu z tego, czego się nauczysz.

Żadna książka nie nauczy cię tego, co musisz wiedzieć. Serwlety, na przykład, są ładnym fundamentem, ale dla czegoś większego niż kilka strony lub punkt końcowy, będziesz chciał użyć jednej z wielu frameworków innych firm, lub JSF, a żadna książka nie obejmuje rdzenia, a następnie framework na dodatek.

Samouczek Java EE 5 jest dobry w ściąganiu fundamentów, moją główną skargą jest to, że nie pokazują kodu źródłowego. Raczej oczekują, że po prostu pobierzesz i uruchomisz. To nie jest omówione w samouczku. Uważam, że książki Head First są całkiem dobre.

W przypadku programowania WWW serwlety raw są wystarczająco ważne wystarczy zrozumieć cykl żądania / odpowiedzi, ale nie potrzebujesz głębokiego zrozumienia, aby przejść do 3rd party framework.

Jestem wielkim fanem pasków dla frameworka akcji (vs Framework komponentowy), a książka single Stripes dostępna jest doskonała (dzięki czemu wybór jest łatwy).

Nie mogę zasugerować Książki Framework, a właściwie nie polecam od razu. Framework komponentu naprawdę zakopuje podstawowe struktury żądań/odpowiedzi HTTP. Zakopują nie bez powodu i zyskują na wartości, zakopując je, ale uważam, że aby być skutecznym, trzeba mieć solidne zrozumienie tych pojęć na początku. Dlatego nie sugeruję najpierw nauki frameworka komponentowego.

Framework JAX-RS REST, zawarty w Java EE 6, ale łatwo instalowany w Java EE 5 lub dowolnym kontenerze servlet, jest doskonały. Zapewne tak powinien być Servlet 3.0. Ale nie znam na to żadnych książek.

 8
Author: Will Hartung,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-01-20 10:30:05

Dla Tomcat, przeczytaj Podręcznik na stronie internetowej. Jest bardzo dobry. W szczególności kilka pierwszych rozdziałów dotyczących organizacji i wdrażania aplikacji internetowych oraz rozdziałów dotyczących API Servlets i JSP.

Jak na wiosnę Książka "Wiosna w akcji" jest bardzo dobra. Podobnie dla Hibernate (Książka Manning), ale myślę, że Hibernate jest głównie poza zakresem webapps. Twoja decyzja.

Wicket - Manning book also. Ale tak naprawdę, po prostu napisz swój kod front-end w Javascript. To będzie mniej bolesne, IMO.

 4
Author: danben,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-12-25 03:24:40

Nie będę komentował innych technologii, ale jeśli chcesz nauczyć się Hibernate 'a to pobierz" Hibernate Made Easy " Cameron McKenzie(www.hiberbook.com). jest wart każdego grosza. Możesz skończyć czytanie tej książki w 2 dni(dosłownie). to jest jak powieść, a na końcu znajdziesz się do czynienia z Hibernate jak Semi-Pro.

 2
Author: motiver,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-11-11 04:39:15

Jpassion zapewnia dobre filmy i materiały do nauki Java EE 6 i innych rzeczy.

Powinieneś również zobaczyć przykłady zastosowań:

  1. Sklep zoologiczny. Wymaga Maven, GlassFish zalecane. Napisany przez Antonio Goncalves, który napisał wspomnianą książkę .
  2. JBoss Ticketmonster . Wymaga Maven & Jboss Forge . Wdrożyć w Jboss.
 2
Author: jacktrades,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-05-05 09:57:27

Jeśli chcesz tylko tworzyć aplikacje internetowe w Javie, sprawdź Play Framework . Jest podobny do "Ruby on Rails"

 1
Author: Apeirogon Prime,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-09-28 07:14:02