Dúvida básica sobre Java Web

Olá

Estou com uma dúvida básica no java para web.

Se desenvolvo com Java + PrimeFaces + Hibernate, criando as classes DOMAIN - DAO - BEAN.
Eu estou desenvolvendo em JSF? Estou certo?

E o que muda para o JPA?

É melhor migrar para o Angular?

Se você usa o primefaces + managed bean, é uma maneira de implementar JSF.
Agora, domain + dao não necessariamente fazem parte disso. Poderia ser qualquer outra abordagem.

Para utilizar o JPA você precisa do arquivo persistence.xml e de uma implementação (hibernate, openjpa, eclipselink), além de uma estrutura específica

Qual a finalidade do projeto? Ele está no início? Você tem familiaridade com JAX-RS? RESTful?

Depende de suas necessidades. Senão será só um peso adicional no front-end.

Como eu disse eu estou estudando PrimeFaces + Hibernate, ai me disseram pra sair fora do JSF que o processamento é pesado. Então pensei, estou estudando uma coisa defasada? Meu sistema vai ficar pesado (lento)?

Então pesquisando vi o Angular Js, e achei que a curva de aprendizado não seria tão grande. Depois descobri que ele praticamente já esta descontinuado e agora é só o Angular com TypeScript. Esse TypeScript não conheço vou ter que aprender do zero, e li em outro tópico que o pessoal não esta entendendo direito as rotinas.

Agora estou dando uma pesquisada no Spring Boot.

Como eu li em artigo, o cara disse que é difícil dizer que o que vai emplacar é o Angular ou outro no mercado. Porque tem um monte e esta sempre aparecendo mais.

Por isso que estou cheio de dúvidas qual escolher, porque tenho alguns sistemas desktop com C# e estou querendo migrar para web.

JSF e Hibernate sao pesados sim.

Nada vai dominar, sempre vai aparecer alguma ferramenta nova. Por isso o importante é aprender HTML/CSS/JavaScript, esta é a base do front-end, o resto são ferramentas opcionais. Uma equipe pode usar jquery e outras AngularJs, Angular 2x, Reactjs, Vue ou até mesmo js puro. Voce nao é obrigado a usar nenhuma ferramenta. Tudo depende do projeto que você for trabalhar.

ASP.NET Core com C# no back-end seria o melhor caminho.

1 curtida