Sou desenvolvedor Java, possuo certificação OCJP 6 mas estou a 2 anos “parado” e até hoje só trabalhei com Java “puro” (especificamente para Desktop, usando Swing em um software legado).
Agora pretendo aperfeiçoar minhas habilidades para a web e gostaria de saber de vocês (atuantes no mercado web) quais frameworks/ferramentas devo estudar… Até 2014 o mercado pedia bastante Struts, Hibernate, Spring e JSF 2…
Estude JavaEE. Dê foco em EJB 3.x, CDI, JAX-RS, JPA. Estude também JSF (aproveite e veja primefaces). Muito importante também estudar frameworks JS como AngularJS, ReactJS, dentre outros. Para as aplicações web, utilize servidores como: wildfly, glassfish, etc.
R
rafaeldt
Alguma sugestão de materiais de estudo? Obrigado pela dica!
javaflex
Para web, vá de Spring Boot com Spring MVC, que segue a mesma linha action based do Struts 2, só que bem mais simplificado. O amarrado JSF finalmente está caindo em desuso para novos projetos.
Hibernate continua sendo o ORM mais usado do mercado. Embora particularmente prefira mais SQL nativo.
Caso você possua pouco conhecimento com java web, recomendo você estudar e criar uma aplicação apenas com JSP + Servlet (depois acesso a banco com JDBC) e depois comece com algum framework.
Como você já possui conhecimento com swing trabalhando em sistema legado, acredito que já deva conhecer acesso à banco também.
Qualquer coisa, só perguntar.
A
AbelBueno1 like
Primeiro, eu confesso que nao sei o que o mercado está pedindo (até porque nao sei em que mercado você está).
Mas eu sempre fui meio avesso a esse stack Java EE padrao.
Se você busca “empregabilidade”, eu faria primeiro uma busca nas vagas abertas na sua regiao, ou nas empresas em que quer trabalhar, e partiria de lá.
Particularmente, dou preferência a empresas que nao pedem experiência em frameworks, mas em conceitos. Claro que essas sao mais raras, mas valem a pena.
E nessa linha, conhecer os conceitos de web é muito importante (coisa que o JSF tenta esconder de você). Por isso estudar frameworks mais simples como SparkJava, por exemplo, podem te dar um conhecimento melhor de como funciona uma app web, comunicaçao entre client e servidor, essas coisas.
javaflex
Também sou totalmente avesso ao Java EE, é só olhar seu histórico complexo e atrasado, enquanto por exemplo a linha Spring sempre esteve a frente na simplicidade para manter o foco no problema real a ser resolvido. JSF sempre foi uma solução muito amarrada e EJB uma complexidade a mais desnecessária. Implementações JEE sempre ficam presas a especificação, que nunca foi uma vantagem na prática.
Para quem procura por soluções simples para Java e que ao mesmo tempo tenha boa aceitação no mercado, SpringBoot com Spring MVC é melhor opção. A ferramenta SpringBoot é nova, mas Spring MVC já é bem usado no mercado.
Eu tive contato com Struts 1.1 e Hibernate 1 por uns meses mas odiei, achava muito chato e cheio de bugs, por isso me recuso a dizer que tenho experiência com web. Conceitualmente acho que estou bem… Servlets, JSP, meio que conheço o “cru”… Sou do interior de SP a ideia era fazer uns freelas e trabalhar por aqui e mais pra frente ir pra capital, vou dar uma olhada nas sugestões de vcs
javaflex
Struts 1.x era pavoroso mesmo, nunca trabalhei mas cheguei a ver projetos em que o código era assustador.
Hibernate está bem estável, embora continue chato. Se seu objetivo não for mercado de trabalho, usar SQL nativo é mais tranquilo, com alguma biblioteca sua que ajude na parte repetitiva.