Pregunta Componentes Spring MVC & UI


Estoy en la fase de "selección de tecnologías" de una pequeña aplicación web de una sola página que estará fuertemente basada en AJAX y que se reportará a un backend de Java.

En una pregunta anterior que publiqué hace varias semanas, la comunidad de SO en general sentía firmemente que sería mejor ir con una aplicación web basada en Spring MVC que con algo en JSF. Dado que Spring está orientado a solicitudes y JSF está orientado a componentes, tendría sentido usar Spring para algo que va a obtener mucho de solicitudes asincrónicas.

Si yo fueron yendo por la ruta JSF, entonces mi siguiente conjunto de decisiones sería si usar o no las llamadas bibliotecas de componentes UI para la tecnología de visualización, como PrimeFaces, IceFaces o MyFaces.

Entonces, me pregunto: ¿Spring MVC tiene algo similar a, digamos, PrimeFaces (o sus "me gusta") para crear el componente de vista para mi (s) página (s)? Sé que no está basado en componentes, pero no estoy muy familiarizado con la plataforma web de Spring MVC y me preguntaba qué son algunos de facto estándares (si corresponde) o pilas tecnológicas típicas que los desarrolladores web de Spring usan para construir buenas páginas web.

Y, si Spring solo usa motores de plantillas run-o-the-mill, algo como Freemarker ¿satisfacer?

Supongo que esta es una pregunta tipo "mejores prácticas" para un desarrollador web de Spring en ciernes.

¡Gracias por adelantado!


32
2017-09-22 19:41


origen


Respuestas:


Por lo general, el valor de los denominados componentes UI radica en la forma en que hacen un seguimiento de las interacciones del usuario en el lado del servidor mediante la integración con un marco con estado.

Dado que ha decidido buscar un marco orientado a solicitudes, tendría más sentido utilizar algunas bibliotecas de JavaScript conocidas del lado del cliente. Las opciones populares incluyen:

Personalmente, si no necesito muchos widgets preconstruidos estándar, me gusta Backbone.js + underscore.js + jQuery. No me gusta Google Web Toolkit, ya que se siente como escribir un pidgin JavaScript, y en ese punto prefiero escribir JavaScript directamente.


20
2017-09-22 21:12



Sí, JSF está orientado a componentes y Spring MVC está orientado a solicitudes. Te recomiendo que eches un vistazo al motor Thymeleaf Template, que es un reemplazo completo para JSP Engine .... Las características de Thymeleaf son:

  • Permite la creación de plantillas naturales.
  • Soporte de HTML5
  • Mayor rendimiento mediante el uso del almacenamiento en memoria caché

Haga clic aquí para más información


6
2018-01-22 21:21



Además de las cosas mencionadas por Ludovico Fischer, si consideramos la misma pregunta en el mundo tecnológico de hoy en día que usted puede usar una de las cosas más poderosas del mundo reciente: Angular. Hay 2 escenarios de muestra.
 

  1. Si su arquitectura es del lado del cliente completo: la integración es muy natural para él. Spring MVC expone su servicio como REST (JSON / XMl ...) y su aplicación cliente con Angular JS consume su JSON. Aquí, la aplicación de guerra (Spring mvc) se debe implementar en un Servlet Container (Tomcat) y su aplicación cliente se puede implementar en el mismo servidor o en otro servidor Nginx, Apache, etc.
  2. Si desea mantener la generación de páginas en el servidor y solo usar AngularJS para una buena manipulación DOM, entonces su código debe implementarse en la misma guerra (WEB-INF). Mezclar los dos enfoques no siempre es una buena idea. Puedes probar hoja de tomillo para permanecer en la generación de la página del lado del servidor.

    De esta forma, puede tener simultáneamente las características geniales de la plantilla angular, la capacidad de prueba y el código de vista limpia.


0
2017-08-25 09:40



Aquí hay otro enfoque (no JSF) para permitir que Spring MVC funcione con componentes ZK UI - Aplicación web enriquecida con Spring MVC CRUD Demo

En ese artículo, usó el controlador Spring MVC para comunicarse con los componentes ZK UI. (todo en código Java)


0
2017-11-17 08:11