Código JAVA:
Ver original
Código JAVA:
Ver original
Address.hbm.xml:
Código XML:
Ver original
<hibernate-mapping> <class name=”entities.Address” table=”ADDRESS”> <id column="address_id" name="addressId"> <generator class="identity"/> </id> <property name=”city”> <column name=”city” /> </property> </class> </hibernate-mapping>
Customer.hbm.xml:
Código XML:
Ver original
<hibernate-mapping> <class name=”entities.Customer” table=”CUSTOMER”> <id column="customer_id" name="customerId"> <generator class="identity"/> </id> <property name=”name”> <column name=”NAME” /> </property> <many-to-one name=”address” column=”address_id” cascade=”all” unique=”true” /> </class> </hibernate-mapping>
Código JAVA:
Ver original
Customer customer = new Customer(); customer.setName("Alex"); Address address = new Address(); address.setCity("Madrid"); customer.setAddress(address); address.setCustomer(customer); session.save(customer); //fetch all customers Query query = session.createQuery("from Customer customer where address_id=?"); Customer customer1 = (Customer) it.next(); Address address1 = customer1.getAddress(); } } }
Este es el fallo que me da: Error en elementos: org.hibernate.QueryException: Expected positional parameter count: 1, actual parameters: [] [from Customer customer where address_id=?]
Os puse las clases y demás para orientaros, el fallo está en la sintaxis de la consulta SQL, supongo que a partir del where en adelante, de ahí vendrá el fallo, pero no sé cómo ponerlo para que sea correcto.
Aquí está el fallo: Query query = session.createQuery("from Customer customer where address_id=?");
A ver si me podeis ayudar.
Un saludo y muchas gracias de antemano.