Buenos dias con todos tengo otro problema xD aver si me pueden ayudar Tengo 2 tablas(usuario y cliente) un cliente posee un usuario unico pero al darle guardar al objeto cliente no me guardar el id del usuario que se encuentra dentro del objeto cliente.
clase cliente package ar.com.magm.model;
import java.io.Serializable;
@SuppressWarnings("serial") public class Cliente implements Serializable{ private int idCliente; private String cliente; private boolean cuentaHabilitada; private Zona zona; private Usuario usuario;
la consulta que genera hibernate al darle en el boton guardar
Hibernate: select max(idCliente) from cliente Hibernate: select zona_.idZona, zona_.zona as zona2_ from zonas zona_ where zona_.idZona=? Hibernate: select max(id) from usuarios Hibernate: insert into cliente (cliente, cuentaHabilitada, idZona, idCliente) values (?, ?, ?, ?) ------------------------>Como se dan cuenta aca esta insertando solo 4 campos faltaria el id de usuario Hibernate: insert into usuarios (nombre, password, admin, id) values (?, ?, ?, ?)
Buenos dias con todos tengo otro problema xD aver si me pueden ayudar
Tengo 2 tablas(usuario y cliente) un cliente posee un usuario unico pero al darle guardar al objeto cliente no me guardar el id del usuario que se encuentra dentro del objeto cliente.
clase cliente
package ar.com.magm.model;
import java.io.Serializable;
@SuppressWarnings("serial")
public class Cliente implements Serializable{
private int idCliente;
private String cliente;
private boolean cuentaHabilitada;
private Zona zona;
private Usuario usuario;
public Cliente() {
super();
}
public Cliente(String cliente, boolean cuentaHabilitada, Zona zona,
Usuario usuario) {
super();
this.cliente = cliente;
this.cuentaHabilitada = cuentaHabilitada;
this.zona = zona;
this.usuario = usuario;
}
public String getCliente() {
return cliente;
}
public int getIdCliente() {
return idCliente;
}
public Zona getZona() {
return zona;
}
public boolean isCuentaHabilitada() {
return cuentaHabilitada;
}
public void setCliente(String cliente) {
this.cliente = cliente;
}
public void setCuentaHabilitada(boolean cuentaHabilitada) {
this.cuentaHabilitada = cuentaHabilitada;
}
public void setIdCliente(int idCliente) {
this.idCliente = idCliente;
}
public void setZona(Zona zona) {
this.zona = zona;
}
public Usuario getUsuario() {
return usuario;
}
public void setUsuario(Usuario usuario) {
this.usuario = usuario;
}
}
clase Usuario
package ar.com.magm.model;
import java.io.Serializable;
@SuppressWarnings("serial")
public class Usuario implements Serializable{
private int id;
private String nombre;
private String password;
private boolean admin;
public Usuario(String nombre, String password, boolean admin) {
super();
this.nombre = nombre;
this.password = password;
this.admin = admin;
}
public Usuario(){
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public boolean isAdmin() {
return admin;
}
public void setAdmin(boolean admin) {
this.admin = admin;
}
}
Cliente.hbm.xml(Mapeo de Cliente)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="ar.com.magm.model.Cliente" table="cliente">
<generator class="increment" />
<property name="cliente" />
<property name="cuentaHabilitada" />
<one-to-one name="usuario" class="ar.com.magm.model.Usuario" cascade="all"></one-to-one>
<many-to-one name="zona" class="ar.com.magm.model.Zona" column="idZona" cascade="all"/>
</class>
</hibernate-mapping>
usuario.hbm.xml
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated 01/07/2013 09:03:40 AM by Hibernate Tools 3.4.0.CR1 -->
<hibernate-mapping>
<class name="ar.com.magm.model.Usuario" table="usuarios">
<generator class="increment" />
<property name="nombre" type="java.lang.String">
<column name="nombre" />
</property>
<property name="password" type="java.lang.String">
<column name="password" />
</property>
<property name="admin" type="boolean">
<column name="admin" />
</property>
</class>
</hibernate-mapping>
la consulta que genera hibernate al darle en el boton guardar
Hibernate:
select
max(idCliente)
from
cliente
Hibernate:
select
zona_.idZona,
zona_.zona as zona2_
from
zonas zona_
where
zona_.idZona=?
Hibernate:
select
max(id)
from
usuarios
Hibernate:
insert
into
cliente
(cliente, cuentaHabilitada, idZona, idCliente)
values
(?, ?, ?, ?)
------------------------>Como se dan cuenta aca esta insertando solo 4 campos
faltaria el id de usuario
Hibernate:
insert
into
usuarios
(nombre, password, admin, id)
values
(?, ?, ?, ?)