Java EE 6에서 Java 웹 애플리케이션을 만들기 위해 무엇을 배워야합니까? [닫은]


103

내 목표는 웹 애플리케이션을 만드는 것입니다!

나는 책 "Headfirst-Java"와 "Headfirst-Servlets and JSP"를 읽었다.

이 주제 (웹 애플리케이션)는 너무 크고 복잡하기 때문에 다음에 무엇을 배워야하는지 물어보고 싶습니다. Java EE, EJB, JSF, JPA, Glassfish와 같은 캐치 워드를 읽을 때 너무 긴장된 느낌이 들지만 포기하지는 않습니다.

누구든지 내가 어떻게 학습을 진행해야하는지 말해 줄 수 있습니까? 다음과 같은 책을 가져와야합니까? GlassFish로 Java EE 6 플랫폼 시작 3 : 초보자에서 전문가로, 아니면 온라인 자습서 만 만들어야합니까?

감사!


1
두 개의 스레드를 읽었습니다. 그러나 다시 : 스레드에서 그들은 "Tomcat, JBoss, Hibernate를 배우고, 이것 저것 배우십시오 ..."라고 말하고있을뿐입니다. 하지만 어떤 특정 책이나 튜토리얼을 빌려야하는지 알고 싶습니다. 그런 방법이 없을 수도 있고 모든 단어를 찾아 보면서 "비효율적으로"배워야합니다. 진행 방법에 대한 조언을 받고 싶었습니다.
creativz 2009

1
핵심 Java에 대한 충분한 지식이 있다면 Head First Servlet 및 JSP로 시작하는 것이 좋습니다. 프로그래밍 언어로서 Java가 처음보다 익숙하지 않다면 이에 대한 지식을 얻고 웹 애플리케이션 개발을 진행해야합니다.
Rachel

22
Java EE 6이 출시 되었기 때문에이 모든 질문이 구식이라는 점을 제외하면 ...
Pascal Thivent

4
@Stephen 글쎄요, 특히 웹 파트 (서블릿 3.0 또는 JSF 2.0 및 CDI 관리 빈)에 차이 가 있다고 생각합니다 .
Pascal Thivent

1
이 질문과 같이 투표율이 높은 일반 질문 중 얼마나 많은 질문이 "건설적이지 않음"으로 닫혀 있는지 재밌습니다. 나는 그들이 매우 건설적이라고 말하고 싶지만 건설적인 방식으로 대답하기는 쉽지 않습니다. 그들은 자신이하고 있거나해야 할 일에 대한 더 큰 그림을 보는 데 도움을줍니다. 그러나 그들이 그렇게 할 수 있다는 것이 좋습니다.
jackthehipster

답변:


174

이것이 논란의 여지가 있다는 것을 알고 있더라도 Java EE 6으로 만 시작하는 것이 좋습니다. 따라서 GlassFish v3를 다운로드하고 GlassFish 와 함께 Java EE 6 플랫폼 시작 3 : 초보자에서 전문가로 받거나 Java EE 6 자습서를 따르십시오 . 제 생각에,이 책 (읽기 시작했기 때문에 제가 말하는 내용을 알고 있습니다)은 "모든 것"이 새로운 것이라면 더 좋은 지침을 제공합니다 (Java EE 플랫폼과 API를 모두 다룹니다). 애플리케이션을 구축하고 배포 할 환경).

이제 내가 말했듯이 "Java EE는 무겁고, 대신 Spring을 사용하고, 프레젠테이션 레이어에 Struts 또는 Wicket 또는 Stripes를 배우고, 지속성을 위해 Hibernate를 배우거나, ORM을 좋아하지 않기 때문에 그렇지 않다는 말을 이미들을 수 있습니다 . 대신 iBatis 또는 스트레이트 JDBC를 사용하고 (스프링에서는 멋지다, Spring은 너무 쿨), Tomcat (그리고 Jetty가 아닌 이유) 또는 JBoss를 사용하거나이 모든 것을 잊어 버리고 Grails로 이동하고 bla bla bla ... " .

그러나 나는 이것이 정말로 당신을 돕고 있다고 생각하지 않으며, 멘토링이나 안내없이 (그리고 모든 조합을 다루는 구식이 아닌 고유 한 리소스를 찾을 수 없을 것입니다) 초보자에게는 매우 혼란스럽게 들릴 것입니다.

따라서 Java EE 6은 모든 요구 사항 (Servlet 3.0, JSF 2.0, JPA 2.0, EJB 3.1 lite, Bean Validation 1.0, CDI)에 대해 정말 좋은 표준 API를 제공하기 때문에 이전 버전의 Java EE에 비해 크게 향상되었다고 생각하기 때문입니다. 등), 이러한 API는 모두 괜찮습니다. 배우는 데 아무런 문제가 없기 때문입니다. 이것은 이미 큰 작업 이기 때문에 어딘가 에서 시작해야하기 때문에 Java EE 6에만 집중하고 잊어 버릴 것입니다. 지금은 다른 프레임 워크입니다. 보다 정확하게는 Java EE 6 웹 프로필 부터 시작하겠습니다 (더 나아가고 싶다면 추가).

이렇게하면 1) 시작하고 새로운 것을 배우게됩니다. 2) 다른 모든 프레임 워크 및 / 또는 도구에 시간을 할애하여 적응하고 여전히 필요함을 증명할 수 있습니다. 그리고 만약 있다면, 생존자들을 실험 할 시간이 될 것이고 그들이 왜 존재하는지 훨씬 더 잘 이해할 수있을 것입니다.


3
감사. 이 책과 관련하여 저는이 책을 완전히 읽지는 않았지만 Java EE 6에 대한 좋은 개요를 얻고 자하는 초보 및 실험 개발자 모두에게이 책을 권장합니다.이 책은 잘 구성되어 있으며 실제로 많은 API를 다룹니다. 누락 됨), 제시된 모든 것을 보여주는 코드 샘플이 있으며, 실제로 교훈적이며 원하는만큼 깊이 들어갈 수 있습니다. 앞으로 더 집중된 책이 있을지 모르지만 이것은 좋은 책입니다.
Pascal Thivent

23
+1,하지만 봄은 너무

13
나를 오해하지 마십시오. Stripes, Spring, Hibernate, ... 훌륭합니다. 그러나 너무 많은 선택은 새로운 것을 발견 할 때 혼란 스러울 수 있으며 Java EE 6를 사용하면 이러한 선택없이 시작할 수 있다고 생각합니다.
Pascal Thivent

9
동의합니다. JEE 스택을 사용하지 않더라도 JEE 스택을 배우는 것이 매우 중요합니다. 모든 스택 모든 것을 진정으로 훌륭하게 만드는 모든 멋진 프레임 워크의 기준이됩니다. 예를 들어 Wicket은 Java 세계에서 서블릿과 필터를 의미하는 Front Controller의 개념-작동 방식을 모르면 Wicket이 무엇을하는지 실제로 이해하지 못할 것입니다! "마법" 을 받아들이지 않는 한 ! 물론 대답으로.
Esko

13
4 년이 더 지난 후 .... 답변에 대해 변경 하시겠습니까?
jlars62 2014-06-06

28

내 조언 1 은 책 읽기를 중단하고 무언가를 구현하는 것입니다. 제 경험상, 책 학습은 실제로 일을하면서 얻은 지식을 대체하기에는 부족합니다.


1-맥락 :이 주제에 대한 두 권의 책을 방금 읽은 사람에게 더 많은 책을 읽을 수있는 조언입니다. 실제로 독서와 행동의 균형이 필요합니다. 특히 해결하려는 특정 문제가있는 경우.


29
그러나 검색 시간을 절약 할 수 있습니다. 질문하는 대신 질문에 답할 수있는 충분한 지식을 제공 할 수 있고 결국 여기에서 높은 명성을 얻을 수 있습니다. 동의하지 않습니까?
Muhammad Gelbana 2013 년

6
아니오 동의하지 않습니다. OP는 이미 두 개의 Java / Java EE 책을 읽었습니다. 프로그래밍을 할 시간입니다. FWIW, 나는 책을 읽음으로써 대부분의 지식을 얻지 못했습니다. 오히려 나는 무언가를 구현하고 필요할 때 문서를 참조하여 주로 얻었습니다. 당신은 책을 읽는 것으로 자전거를 타는 법을 배우지 않으며 ... 그렇게 프로그래밍 기술도 배우지 않습니다.
Stephen C

3
그것은 균형에 중요 reading하고 practice.
smwikipedia 2015 년

9

Java EE 6은 정말 놀랍습니다. 유일한 문제는 약 2 주가되었고 현재 기능을 제공하는 컨테이너는 Glassfish가 1 개뿐이라는 것입니다.

나는 Glassfish에 대해 아무것도 가지고 있지 않습니다. 저는 그것을 모든 곳에서 사용하고 여러 프로덕션 인스턴스를 사용합니다. 저는 제품과 프로젝트를 좋아합니다.

즉, Java EE 6의 세부 사항은 Java EE 5로 다시 변환되지 않습니다. 일부는 그렇고 많은 경우가 있지만 Web Profile, Servlet 3.0, 새로운 Bean 유형, JPA 2 등은 없습니다.

따라서 Java EE 6을 먼저 배우면 단순히 단일 컨테이너로 제한됩니다. 더 많이오고 있지만 아직 여기에 없습니다.

Tomcat, JBoss, OpenEJB, Glassfish, Jetty, Resin, Geronimo 등은 모두 Java EE 5 사양에서 잘 작동합니다 (적어도 그들이 지원하는 사양의 일부, Tomcat에는 EJB가 없습니다).

Java EE 6으로 넘어 가지 않은 Java EE 5의 어떤 것도 생각할 수 없습니다. Java EE 6은 매우 오래된 측면을 선택 사항으로 만들었고, 오늘은 배우지 않았을 것입니다. Java EE 6은 일부 Java EE 5를 훨씬 쉽게 만들었습니다 (특히 EJB Lite 패키징).

Java EE 6을 지금 배우고 배운 내용을 많이 사용하지 못할 수 있음을 발견하는 대신 다양한 환경에서 배운 내용을 실제로 적용 할 수 있도록 지금 Java EE 5를 배우십시오.

어떤 책도 당신이 알아야 할 것을 가르쳐주지는 않을 것입니다. 예를 들어 서블릿은 좋은 기반이지만 몇 페이지 나 끝점보다 큰 경우에는 많은 타사 프레임 워크 또는 JSF 중 하나를 사용하고 싶을 것입니다. 그것의.

Java EE 5 튜토리얼은 기초를 다듬는 데 유용합니다. 저의 주요 불만은 소스 코드를 보여주지 않는다는 것입니다. 오히려 그들은 당신이 그것을 다운로드하고 실행하기를 기대합니다. 튜토리얼에서는 다루지 않습니다. 나는 Head First 책이 꽤 좋다는 것을 알았습니다.

웹 프로그래밍의 경우 원시 서블릿은 요청 / 응답주기를 이해하는 데 충분할만큼 중요하지만 타사 프레임 워크로 도약하기 위해 깊은 이해가 필요하지 않습니다.

저는 Action 프레임 워크에 대한 Stripes (컴포넌트 프레임 워크에 비해)의 열렬한 팬이며 사용 가능한 단일 Stripes 책은 훌륭합니다 (쉽게 선택할 수 있음).

나는 컴포넌트 프레임 워크 책을 제안 할 수 없으며 실제로 바로 추천하지 않을 것입니다. 구성 요소 프레임 워크는 HTTP 핵심 요청 / 응답 구조를 진정으로 묻습니다. 그들은 이유가있어서 그것들을 묻고, 그것들을 묻어 가치를 얻지 만, 나는 당신이 이러한 개념을 조기에 확고하게 이해해야하는 것이 효과적이라고 믿습니다. 그렇기 때문에 구성 요소 프레임 워크를 먼저 배우지 않는 것이 좋습니다.

JAX-RS REST 프레임 워크는 Java EE 6에 포함되어 있지만 Java EE 5 또는 모든 서블릿 컨테이너에 쉽게 설치할 수 있습니다. 틀림없이 Servlet 3.0이 되어야만하는 것입니다. 그러나 나는 그것에 대한 어떤 책도 모른다.


2
질문은 프로덕션 준비가되었을 때 애플리케이션 서버의 상태입니다. 주어진 프로젝트가 지금부터 6 개월이 걸린다면 Oracle과 JBoss는 JEE6 호환 서버를 가지고있을 가능성이 가장 높고 Resin은 JEE6 Web Profile 서버가있을 가능성이 높습니다.
Thorbjørn Ravn Andersen

음, JBoss는 12 월에 출시 될 예정입니다. 오라클은 낮습니다. Resin은 웹 프로필 구현과 관련하여 조용했습니다. Geronimo는 3.0 (베타)의 웹 프로필을 사용합니다. Glassfish는 3.0.1로 출시되어 정말 좋습니다.
Thorbjørn Ravn Andersen

5

Tomcat의 경우 웹 사이트 의 설명서 를 읽으십시오 . 아주 좋습니다. 특히 웹 앱 구성 및 배포에 대한 처음 몇 장과 Servlets API 및 JSP에 대한 장입니다.

Spring의 경우 Manning 책 Spring in Action은 매우 좋습니다. Hibernate (Manning 책)와 비슷하지만 Hibernate는 대부분 웹 응용 프로그램의 범위를 벗어납니다. 그래도 전화.

Wicket-Manning 책도 있습니다. 하지만 실제로는 자바 스크립트로 프런트 엔드 코드를 작성하십시오. 덜 고통 스러울 것입니다, IMO.


3

다른 기술에 대해서는 언급하지 않겠지 만 Hibernate를 배우고 싶다면 Cameron McKenzie (www.hiberbook.com)의 "Hibernate Made Easy"를 받으십시오. 모든 페니의 가치가 있습니다. 그 책을 2 일 (말 그대로) 읽을 수 있습니다. 그것은 소설과 같고 결국 Semi-Pro처럼 Hibernate를 다루는 자신을 발견합니다.


3

Jpassion 은 Java EE 6 및 기타 내용을 학습 할 수있는 좋은 비디오와 자료를 제공합니다.

또한 응용 프로그램 예를 볼 수 있습니다.

  1. Petstore . Maven이 필요하며 Glassfish가 권장됩니다. 언급 된 을 쓴 Antonio Goncalves가 쓴 .
  2. JBoss Ticketmonster . Maven & Jboss Forge가 필요합니다 . Jboss에 배포합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.