¿Cómo trabajar con tablas sin PRIMARY KEY en Hibernate?

tengo mesa

CREATE TABLE test_wopk
(
  id integer,
  "name" character(25),
  age integer
)

Después de la ingeniería inversa en hibernación, obtengo un archivo de clases y mapeo.

TestWopk.java

package gen;

// Generated 16.08.2012 14:08:26 by Hibernate Tools 3.4.0.CR1

/**
 * TestWopk generated by hbm2java
 */
public class TestWopk implements java.io.Serializable
{

private TestWopkId id;

public TestWopk()
{
}

public TestWopk(TestWopkId id)
{
    this.id = id;
}

public TestWopkId getId()
{
    return this.id;
}

public void setId(TestWopkId id)
{
    this.id = id;
}

}

TestWopkId.java

package gen;

// Generated 16.08.2012 14:08:26 by Hibernate Tools 3.4.0.CR1

/**
 * TestWopkId generated by hbm2java
 */
public class TestWopkId implements java.io.Serializable
{

private Integer id;
private String name;
private Integer age;

public TestWopkId()
{
}

public TestWopkId(Integer id, String name, Integer age)
{
    this.id = id;
    this.name = name;
    this.age = age;
}

public Integer getId()
{
    return this.id;
}

public void setId(Integer id)
{
    this.id = id;
}

public String getName()
{
    return this.name;
}

public void setName(String name)
{
    this.name = name;
}

public Integer getAge()
{
    return this.age;
}

public void setAge(Integer age)
{
    this.age = age;
}

public boolean equals(Object other)
{
    if ((this == other))
        return true;
    if ((other == null))
        return false;
    if (!(other instanceof TestWopkId))
        return false;
    TestWopkId castOther = (TestWopkId) other;

    return ((this.getId() == castOther.getId()) || (this.getId() != null && castOther.getId() != null && this.getId()
            .equals(castOther.getId())))
            && ((this.getName() == castOther.getName()) || (this.getName() != null && castOther.getName() != null && this
                    .getName().equals(castOther.getName())))
            && ((this.getAge() == castOther.getAge()) || (this.getAge() != null && castOther.getAge() != null && this
                    .getAge().equals(castOther.getAge())));
}

public int hashCode()
{
    int result = 17;

    result = 37 * result + (getId() == null ? 0 : this.getId().hashCode());
    result = 37 * result + (getName() == null ? 0 : this.getName().hashCode());
    result = 37 * result + (getAge() == null ? 0 : this.getAge().hashCode());
    return result;
}

}

TestWopk.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 16.08.2012 14:08:26 by Hibernate Tools 3.4.0.CR1 -->
<hibernate-mapping>
<class name="gen.TestWopk" table="test_wopk">
    <composite-id name="id" class="gen.TestWopkId">
        <key-property name="id" type="java.lang.Integer">
            <column name="id" />
        </key-property>
        <key-property name="name" type="string">
            <column name="name" length="25" />
        </key-property>
        <key-property name="age" type="java.lang.Integer">
            <column name="age" />
        </key-property>
    </composite-id>
</class>
</hibernate-mapping>

Quiero obtener datos de db.

    Session session = HibernateUtil.currentSession();

    Transaction tx= session.beginTransaction();
    //чтение из бд
     List list = session.createQuery("from TestWopk").list();
 Iterator itr = list.iterator();
 while(itr.hasNext()){
   TestWopk test = (TestWopk) itr.next();
   System.out.print("EmpName: "+ test.getId());
   System.out.print(" EmpSal: "+ test.getName());
   System.out.print(" EmpSal: "+ test.getAge());
   System.out.println();
 }
    tx.commit();

    HibernateUtil.closeSession();

Y obtener error

Exception in thread "main" java.lang.Error: Unresolved compilation problems: 
The method getName() is undefined for the type TestWopk
The method getAge() is undefined for the type TestWopk

at net.sf.hibernate.examples.quickstart.hib_main.main(hib_main.java:67)

Dime por favor cómo trabajar con las clases generadas por hibernate?

Respuesta 1

Estoy tratando de resolver el problema de 8 rompecabezas usando la búsqueda heurística. Estoy usando una matriz 3 * 3 para representar una posibilidad. El código no está completo, pero cuando intento agregar el elemento explorado al ...

Tengo una aplicación cliente-servidor, en el lado del cliente tengo un botón para recibir un marco con una tabla dentro del servidor. Si paso el marco con otros jComponents (JButton, JTextField) funciona ...

¿Tiene ARCore un sistema de partículas (sin usar Unity)? Ya estoy usando ViroCoreAR pero ahora, quiero usar ARCore pero no sé si ARCore tiene un sistema de partículas como ViroCoreAR o incluso ARKit para (...

Estoy enfrentando un problema extraño solo en Chrome. Recibo una imagen del servidor que funciona bien en Firefox, pero en Chrome la imagen se carga por una vez y luego se muestra como una imagen rota. En consola de ...