Domanda
ehi, voglio fare l'ordinamento nidificato in letargo.
Ho una serie di applicazioni
nell'oggetto course
. application
ha un attributo time
e type
.
Voglio ordinare per
posso usarlo come segue ??
order-by="type desc,time asc"
Nota che il tipo dovrebbe essere ordinato in modo discendente (type è un tipo di dati int in java) e l'ora in modo crescente (l'ora è del tipo di dati della data in jave)
ad es. di ordine
Tipo ora
5 1
5 2
5 3
4 1
4 2
il tempo è stato indicato come intero in questo esempio
Soluzione
Puoi ordinare proprio come hai detto. Potresti anche voler aggiungere l'interfaccia comparabile ai tuoi oggetti in modo da poterli ordinare nei tuoi servizi.
Il seguente file di ibernazione contiene un esempio dell'uso di un bit sql per l'ordinamento
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="au.gov.abs.maserati.domain.entity.CURF"
table="CURF" >
<id name="ID" column="ID">
<generator class="native" />
</id>
<property name="title" />
<property name="description" />
<property name="active"
type="yes_no"
not-null="true" />
<set name="specialConditions" cascade="none"
order-by="sortOrder, Text1"
where=" Discriminator in ( 'SPECIAL-CURF-AGREEMENT' ) and active = 'Y' ">
<key column="parentID" not-null="false" />
<one-to-many
class="au.gov.abs.maserati.domain.entity.Condition" />
</set>
</class>
</hibernate-mapping>