2010-10-22 23 views
7

Acabo de empezar a leer el tutorial JDBC de Sun. Instalé MySQL Connector/J y estaba hojeando su menú, luego encontré esta declaración:Relaciones entre Spring, Hibernate, JDBC

"Aunque JDBC es útil por sí mismo, esperamos que si no está familiarizado con JDBC, después de leer las primeras secciones de este manual, que evitaría usar JDBC desnudo para todos los problemas menos triviales y considere usar uno de los populares marcos de persistencia como Hibernate, Spring JDBC templates o Ibatis SQL Maps para hacer la mayoría del trabajo repetitivo y el levantamiento más pesado que a veces se requiere con JDBC "

¿Cuáles son las relaciones entre Spring, Hibernate, JDBC? ¿Qué significa la declaración al decir "evitar usar JDBC desnudo"?

Gracias,

Sarah

+0

otra pregunta relacionada: http://stackoverflow.com/questions/2723228/ which-are-the-differences-similarities-between-hibernate-and-other-frameworks-o –

Respuesta

17

Si utiliza Hibernate, las plantillas JDBC de Spring o los mapas SQL de Ibatis, todavía está utilizando JDBC, pero no tiene que tratarlo directamente. Lo están haciendo por usted y, hasta cierto punto, lo aíslan de algunas dificultades en el uso de JDBC.

Hibernate es un marco object-relational-mapping.

MyBatis, anteriormente conocido como iBatis, es un marco de mapeo de datos.

Spring es un conjunto amplio de componentes de estructura web, e incluye subsistemas de plantillas que permiten la integración con JDBC, Hibernate o iBatis y abstraen algunos de los detalles de tratar con cualquiera de ellos.

Debería aprender JDBC, pero también (eventualmente) aprender algunos de estos otros y tratar de evitar el uso de JDBC directamente para cualquier cosa muy compleja.

Estas ideas también (especialmente Hibernate) están estrechamente relacionadas con el Java Persistence API (JPA), que también vale la pena aprender.

Es posible que también desee consultar Java Data Objects (JDO).

No intente aprender todo de una vez.

Comenzar con JDBC es una buena idea. Quedarse con eso no es así.

+4

* "Comenzar con JDBC es una buena idea. Mantenerse con eso no es así". * +1 para eso (y el resto también) –

+0

Gracias. Me encanta su respuesta porque también señaló la dirección de aprendizaje aparte de la información. – sarahTheButterFly

2

"evitar el uso de JDBC desnudo" - No utilizar la API JDBC directamente.

Hibernate - Un marco de persistencia de base de datos. Te permite almacenar objetos Java en bases de datos. Bastante ingenioso.

Spring - En realidad es un marco de desarrollo web. Las plantillas de JDBC son una abstracción de JDBC, creo.

+0

Spring es más que un "marco de desarrollo web" en 2016 (un comentario seis años después de haber publicado la pregunta, espero que no mente): P – sarahTheButterFly

3

Alfabetos > Palabras > Oraciones.

Así es como aprendemos el lenguaje (natural).

Del mismo modo, veo:

API JDBC > API JDBC con la Agrupación de conexiones JDBC > primavera Plantilla > ORM/APP/JDO