Foro sobre Java EE > Si tuvierais que elegir...
hasta el momento he trabajado con angular y spring y no he tenido problemas de rendimiento usando beans.
Yo siempre he trabajado con JSF en mi corta experiencia y no he tenido ningún tipo de problema de rendimiento. Se integra muy bien con BeanValidation lo cual es genial pues le delegas la capa de validación. Desde la versión 2.0, JSF ha mejorado muchísimo.
Para mí, Spring, llevo años trabajando con este framework y nunca he tenido problemas de rendimiento.
Pues si lo quiero todo muy rápido lo haría con Spring pero no metería ningún ORM tipo HIBERNATE, directamente JDBC que también Spring lo soporta para que las queries las hagas tu y no el ORM. Respecto al cliente usaría un frame Sigle Para que el mayor tiempo que pieras sea al carga la página por primera vez, mi opción sería AngularJS y para integrar Cliente y Servidor usaría servicios REST en el servidor que sean llamados desde AngularJS para recuperar los datos
Spring + JDBC + AngularJS + JSON
Pues si lo quiero todo muy rápido lo haría con Spring pero no metería ningún ORM tipo HIBERNATE
Con un ORM puedes usar un caché de segundo nivel u otras técnicas. Hay aplicaciones grandes que usan ORMs como Hibernate o JPA y escalan sin problemas. No hay por que limitarse.
@antoniovl si quieres máximo rendimiento y tienes queries complicadas, nada de ORM las queries las optimizas tu.
Otra cosa como bien dice @antoniovl que puedes integrar son caches para tus peticiones, EHCACHE se integra muy bien con Spring de tal manera que para peticiones con los mismo parámetros de entrada te cachea las respuestas y no es nesario consultar en base de datos.
Depende mucho de las características del sistema.
Depende mucho de las características del sistema
Exacto. Ese debería ser el punto de partida.
Saludos,
En primer lugar la definición de la Arquitectura requiere un análisis exhaustivo del requerimiento en si. Basándome en el "rendimiento", estoy de acuerdo con @antuansoft: Spring, jdbcTemplate (de Spring), y en el front Angularjs comunicándome a través de web services Rest obviamente cacheando la mayor cantidad de datos posibles.
Si la escalabilidad no es un punto importante para tu sistema, y no tienes intención de reutilizar los servicios, puedes optar por prescindir de ellos y utilizar ZK, el cual se integra con AngularJs.
Pero como anteriormente concluyeron @antoniolv y @antuansoft, la definición es relativa a las características del sistema.
Hola a todos.
Si tuvierais que elegir un framework java para una aplicación web, basándose como característica principal el rendimiento. ¿cuál elegiríais?