con java frameworks java-ee

java - con - spring vs struts



¿Cuál es la diferencia entre Spring, Struts, Hibernate, JavaServer Faces, Tapestry? (8)

  1. Spring es un contenedor IoC (al menos el núcleo de Spring) y se usa para conectar cosas mediante inyección de dependencia. Spring proporciona servicios adicionales como la gestión de transacciones y la integración perfecta de varias otras tecnologías.
  2. Struts es un marco de presentación basado en acciones (pero no lo use para un nuevo desarrollo).
  3. Struts 2 es un marco de presentación basado en acciones, la versión 2 de las anteriores (creado a partir de una combinación de WebWork con Struts).
  4. Hibernate es una herramienta de mapeo relacional de objetos, un marco de persistencia .
  5. JavaServer Faces es un marco de presentación basado en componentes.
  6. JavaServer Pages es una tecnología de visualización utilizada por todos los marcos de presentación mencionados para la vista.
  7. Tapestry es otro marco de presentación basado en componentes.

Entonces, para resumir:

  • Struts 2, JSF, Tapestry (y Wicket, Spring MVC, Stripes) son marcos de presentación . Si usa uno de ellos, no usa otro.
  • Hibernate es un marco de persistencia y se utiliza para persistir los objetos de Java en una base de datos relacional.
  • Spring se puede utilizar para conectar todo esto y para proporcionar una gestión declarativa de las transacciones.

No quiero hacer las cosas más confusas, pero tenga en cuenta que Java EE 6 proporciona un equivalente moderno, estandarizado y muy agradable de los marcos anteriores: JSF 2.0 y Facelets para la presentación, JPA 2.0 para la persistencia, Dependency Injection, etc. nuevo desarrollo, esta es una opción seria de IMO, Java EE 6 es una gran pila.

Ver también

¿Puedo saber cuál es la diferencia entre:

  1. Primavera
  2. Struts
  3. Struts 2
  4. Hibernar
  5. Caras de JavaServer
  6. Páginas de JavaServer
  7. Tapiz

¿Estas tecnologías / marco son complementarias entre sí? ¿O son alternativas entre sí (después de usar uno de ellos, entonces no necesito usar el otro)?

Gracias.


En breve,

Struts es para desarrollo de front-end de sitio web

Hibernate es para el desarrollo de back-end del sitio web

Spring es para el desarrollo completo del sitio web debido a la arquitectura MVC (Model-View-Controller)


En general...

Hibernate se usa para manejar las operaciones de la base de datos. Existe un amplio conjunto de funcionalidades de base de datos, lo que reduce la cantidad de líneas de código. Especialmente debes leer @Anotación de Hibernate. Es un marco ORM y una capa de persistencia.

Spring proporciona un amplio conjunto de mecanismos de trabajo basados ​​en inyección. Actualmente, Spring es muy conocido. También debes leer sobre Spring AOP. Hay un puente entre Struts e Hibernate. Principalmente Spring proporciona este tipo de utilidad.

Struts2 proporciona programación basada en acción. Hay un rico conjunto de etiquetas Struts. Struts demuestra la programación basada en la acción, por lo que debe mantener todo el control relevante de su vista.

Además, Tapestry es un marco diferente para Java. En el que solo .tml manejar .tml (archivo de plantilla). Tienes que crear dos archivos principales para cualquier clase. Una es la clase JAVA y otra es su plantilla. Ambos nombres son iguales. Tapestry llama automáticamente a clases relacionadas.


En hibernación no necesita preocuparse por cómo crear tablas en SQL y no necesita recordar la conexión, afirmación preparada como que los datos se conservan en una base de datos. Entonces, básicamente hace que la vida de un desarrollador sea fácil.


La diferencia entre Spring , Struts e Hibernate es la siguiente:

  1. Spring es un Framework de aplicaciones pero Struts e hibernate no lo es.
  2. Spring e Hibernate son Light Weighted pero Struts 2 no.
  3. Spring e Hibernate tienen una arquitectura en capas, pero Struts 2 no.
  4. Spring e Hibernate admiten acoplamiento flexible pero Struts 2 no.
  5. Struts 2 e Hibernate tienen una biblioteca de etiquetas, pero Spring no.
  6. Spring e Hibernate tienen una fácil integración con las tecnologías ORM, pero Struts no.
  7. Struts 2 tiene una fácil integración con las tecnologías del lado del cliente, pero Spring e Hibernate no tienen.

Puede ver el resumen y la clasificación para usted here . Hibernate es un ORM, por lo que puede usar struts + Hiberante o spring + hibernate para crear una aplicación web. Diferentes marcos web y muchos son alternativas entre sí.


Spring es un marco de aplicación que trata con IOC (Inversión de control).

Struts 2 es un framework MVC de aplicación web que se ocupa de las acciones.

Hibernate es un ORM (mapeo relacional de objetos) que trata con datos persistentes.


Las páginas y los componentes de Tapestry son simples POJO (Objeto Java Plain Old) que consta de getters y setters para facilitar el acceso a las características del lenguaje Java.