Meu objetivo é fazer aplicações web!
Terminei de ler os livros "Headfirst - Java" e "Headfirst - Servlets e JSP".
Como este tópico (aplicativos da web) é tão grande e complicado, gostaria de perguntar o que devo aprender a seguir. Eu me sinto sobrecarregado quando leio slogans como Java EE, EJB, JSF, JPA, Glassfish ... mas não vou desistir.
Alguém pode me dizer como devo proceder com o aprendizado? Devo pegar um livro como este: Iniciando a plataforma Java EE 6 com GlassFish 3: de iniciante a profissional ou devo apenas fazer alguns tutoriais online?
Obrigado!
java
jakarta-ee
web-applications
creativz
fonte
fonte
Respostas:
Mesmo que eu saiba que isso será controverso, meu conselho seria começar apenas com o Java EE 6. Portanto, pegue o GlassFish v3 e obtenha o livro Beginning Java EE 6 Platform with GlassFish 3: From Novice to Professional ou siga o tutorial Java EE 6 . Na minha opinião, o livro (que comecei a ler e sei do que estou falando) oferece mais orientações, que podem ser preferíveis se "tudo" for novo para você (cobre tanto a plataforma Java EE quanto suas APIs e o ambiente para construir, implantar seus aplicativos).
Agora, como eu disse, já posso ouvir vozes dizendo coisas como "Java EE é pesado, use Spring em vez disso, aprenda Struts ou Wicket ou Stripes para a camada de apresentação, aprenda Hibernar para persistência ou não porque não gosto de ORM, use iBatis ou JDBC direto (você verá, é legal com Spring, Spring é tão legal) e use Tomcat (e por que não Jetty) ou JBoss, ou simplesmente esqueça tudo isso e vá para Grails e bla bla bla ... " .
Mas eu não acho que isso esteja realmente ajudando você e, sem orientação ou orientação (e você não encontrará um recurso exclusivo não desatualizado cobrindo todas as combinações), isso deve soar muito confuso para um iniciante.
Então, porque eu acho que o Java EE 6 é uma grande melhoria em relação às versões anteriores do Java EE, porque ele fornece APIs padrão muito boas para todas as suas necessidades (Servlet 3.0, JSF 2.0, JPA 2.0, EJB 3.1 lite, Bean Validation 1.0, CDI , etc), porque essas APIs são todas mais do que decentes, porque não há nada realmente errado em aprendê-las, porque isso já é uma grande tarefa, porque você tem que começar de algum lugar , eu focaria apenas no Java EE 6 e esqueceria o outros frameworks por enquanto. Mais precisamente, eu começaria com o Java EE 6 Web Profile (e então adicionaria coisas se você quiser ir mais longe).
Ao fazer isso, 1) você dará os primeiros passos e aprenderá coisas totalmente novas e 2) dará algum tempo para que todos os outros frameworks e / ou ferramentas se adaptem e provem que ainda há necessidade deles. E se houver, ainda será hora de experimentar os sobreviventes e você poderá entender muito melhor por que eles existem.
fonte
Meu conselho 1 é parar de ler livros e começar a implementar coisas. Em minha experiência, o aprendizado de livros é um substituto pobre para o conhecimento que você obtém ao fazer as coisas.
1 - Contexto: este é um conselho para quem acaba de ler dois livros sobre o assunto e está procurando mais livros para ler. Na prática, você precisa equilibrar ler e fazer. Especialmente se você tiver um problema específico que está tentando resolver.
fonte
reading
epractice
.Java EE 6 é realmente incrível. O único problema é que tem cerca de 2 semanas, e há apenas 1 contêiner oferecendo seus recursos - Glassfish.
Não tenho nada contra o Glassfish, uso em todo lugar, várias instâncias de produção, adoro o produto e o projeto.
Dito isso, os detalhes do Java EE 6 não se traduzem em Java EE 5. Alguns sim, muitos sim, mas o Web Profile, Servlet 3.0, os novos tipos de Bean, JPA 2, etc. Esses não estão lá.
Portanto, ao aprender Java EE 6 primeiro, você está simplesmente se restringindo a um único contêiner. Mais estão vindo, mas eles não estão aqui ainda.
Tomcat, JBoss, OpenEJB, Glassfish, Jetty, Resin, Geronimo, etc. todos funcionam bem com a especificação Java EE 5 (pelo menos aquelas partes da especificação que suportam, Tomcat não tem EJB, por exemplo).
Não consigo pensar em nada no Java EE 5 que não foi transportado para o Java EE 6. O Java EE 6 tornou opcionais alguns aspectos muito antigos e aqueles que você simplesmente não aprenderia hoje de qualquer maneira. O Java EE 6 tornou algumas coisas do Java EE 5 ainda mais fáceis (principalmente empacotamento, EJB Lite, por exemplo).
Aprenda Java EE 5 agora para que possa realmente aplicar o que aprendeu em uma variedade de ambientes, em vez de aprender Java EE 6 agora e descobrir que pode não ser capaz de usar muito do que aprendeu.
Nenhum livro vai te ensinar o que você precisa saber. Servlets, por exemplo, são uma boa base, mas para qualquer coisa maior do que algumas páginas ou endpoint, você vai querer usar um dos muitos frameworks de terceiros, ou JSF, e nenhum livro cobre o núcleo e então um framework no topo por essa.
O tutorial do Java EE 5 é bom para baixar os fundamentos. Minha principal reclamação é que eles não mostram o código-fonte. Em vez disso, eles esperam que você apenas baixe e execute-o. Não é discutido no tutorial. Descobri que os livros Use a Cabeça são muito bons.
Para a programação da web, Servlets brutos são importantes o suficiente apenas para entender o ciclo de solicitação / resposta, mas você não precisa de um conhecimento profundo para dar um salto para uma estrutura de terceiros.
Sou um grande fã de Stripes para uma estrutura de ação (em vez de uma estrutura de componente), e o único livro Stripes disponível é excelente (tornando sua escolha uma escolha fácil).
Não posso sugerir um livro de estrutura de componentes e, na verdade, não recomendaria um imediatamente. As estruturas de componentes realmente enterram as estruturas principais de solicitação / resposta HTTP. Eles os enterram por um motivo e eles ganham valor por enterrá-los, mas acredito que para ser eficaz você precisa ter um entendimento sólido desses conceitos desde o início. É por isso que não sugiro aprender uma estrutura de componentes primeiro.
A estrutura JAX-RS REST, incluída no Java EE 6, mas prontamente instalável no Java EE 5 ou em qualquer contêiner de servlet, é excelente. Indiscutivelmente é o que Servlet 3.0 deveria ter sido. Mas não conheço nenhum livro sobre isso.
fonte
Para Tomcat, leia o manual no site. É muito bom. Particularmente, os primeiros capítulos sobre organização e implantação de aplicativos da web e os capítulos sobre Servlets API e JSPs.
Para a primavera, o livro de Manning, Spring in Action, é muito bom. Da mesma forma para o Hibernate (o livro Manning), mas acho que o Hibernate está principalmente fora do escopo dos aplicativos da web. Sua escolha, no entanto.
Wicket - livro de Manning também. Mas, realmente, basta escrever seu código de front-end em Javascript. Será menos doloroso, IMO.
fonte
Não vou comentar sobre outras tecnologias, mas se você quiser aprender Hibernate, pegue o "Hibernate Made Easy" de Cameron McKenzie (www.hiberbook.com). Vale a pena cada centavo. Você pode terminar de ler esse livro em 2 dias (literalmente). é como um romance e no final você se vê lidando com o Hibernate como um Semi-Pro.
fonte
Paixão oferece bons vídeos e materiais para aprender Java EE 6 e outras coisas.
Você também deve ver exemplos de aplicativos:
fonte
Se você deseja apenas criar aplicativos da web em Java, verifique o Play Framework . É semelhante a "Ruby on Rails"
fonte