Foros del Web » Programación para mayores de 30 ;) » Java »

Acceder a Mysql con Hibernate session

Estas en el tema de Acceder a Mysql con Hibernate session en el foro de Java en Foros del Web. Buenas, necesito ayuda para acceder a la base de datos con Hibernate 3, no consigo hacerlo funcionar. La clase donde gestiono las operaciones con la ...
  #1 (permalink)  
Antiguo 13/04/2011, 12:17
 
Fecha de Ingreso: diciembre-2007
Mensajes: 135
Antigüedad: 16 años, 10 meses
Puntos: 1
Acceder a Mysql con Hibernate session

Buenas, necesito ayuda para acceder a la base de datos con Hibernate 3, no consigo hacerlo funcionar.

La clase donde gestiono las operaciones con la base de datos se llama com.dao.UserDAOImpl. Ahí pongo lo siguiente:
Código:
...
SessionFactory sessionFactory;
...

public void saveUser(User user) {
sessionFactory.getCurrentSession().save(user);
}

tambien he probado a hacer:

Código:
session = sessionFactory.openSession();
session.save();
Incluso:


Código:
Transaction transaction = null;


transaction = session.beginTransaction();
session.save(user);
transaction.commit();
el xml en el que declaro los beans:
Código:
...

<bean id="myDataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
		<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
		<property name="url" value="jdbc:mysql://localhost/miproyecto"/>
		<property name="username" value="root"/>
		<property name="password" value="root"/>
	</bean>
	
	<bean id="mySessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
		<property name="dataSource" ref="myDataSource" />
		<property name="annotatedClasses">
			<list>
				<value>com.domain.User</value>
			</list>
		</property>
		<property name="hibernateProperties">
			<props>
				<prop key="hibernate.dialect">org.hibernate.dialect.HSQLDialect</prop>
				<prop key="hibernate.show_sql">true</prop>
				<prop key="hibernate.hbm2ddl.auto">create</prop>
			</props>
		</property>
	</bean>
	
	<bean id="myUserDAO" class="com.dao.UserDAOImpl">
		<property name="sessionFactory" ref="mySessionFactory"/>
	</bean>

    
    <bean id="userController" class="com.web.UserController">
    <property name="userDAO" ref="myUserDAO"/>
    </bean>
...
Y me da el error al tratar de guardar un usurio:

Código:
org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.NullPointerException
Con HibernateTemplate si me deja guardarlo, ¿que hago para que me deje usar session?


Bien eso por una parte, otra cosa, utilizando Hibernate, ¿de que me tengo que preocupar? Quiero decir, por ejemplo, ¿tengo que preocuparme de cerrar conexiones con la base de datos?
¿tengo que preocuparme de tratar los errores que pueda lanzar la base de datos? No se si todo eso te lo maneja el framework o lo tienes que manejar tu, de momento los errores como por ejemplo cuando la base de datos no esta disponible o cuando violo la integridad de ésta me salta una página fea de error que no debería salir lógicamente, por lo que veo los errores si son necesario tratarlos, ¿estoy en lo cierto?

Espero que me podais aclarar un poco esto,

Gracias,

Un saludo

Etiquetas: acceder, hibernate, mysql, session
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:04.