tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
1194
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    catarina catarina ist offline Mitglied
    Registriert seit
    Jun 2008
    Beiträge
    12
    ich bin nur eine anfängerin, ich versuch die ganze Zeit diese frage zu implementieren,
    ich glaube bis jetzt habe ich alles richtig gemacht aber trotzdem bekomme ich keine ergebnis!!

    hat jemand n Idee!!?
    wäre sehr nett, wenn jemand mir helfen kann.
    danke im voraus


    hier ist der code:

    @SuppressWarnings("unchecked")
    public class ImmobilieDAO extends HibernateDaoSupport {
    private static final String
    BASE_IMMO_QUERY =
    "from " + Immobilie.class.getName() + " i ";
    private static final String SEARCH_IMMO_OR_QUERY =
    BASE_IMMO_QUERY +
    " where lower(title) like lower(?) " +
    "or lower(city) like lower(?) " +
    "or lower(zipcode) like lower(?) " +
    "or garten = ? " +
    "or balkon = ? " ;

    public List<Immobilie> getByObjectSearch (Immobilie immobilie)
    {
    Immobilie immo = new Immobilie();
    //immo.setTitle("supergeil");

    Example exampleImmo =
    Example.create(immo).ignoreCase().enableLike()
    .enableLike(MatchMode.ANYWHERE).excludeZeroes()
    .excludeProperty("title")
    .excludeProperty("id")
    .excludeProperty("bilder").excludeProperty("insertedBy")//.excludeProperty("typ")
    .excludeProperty("description").excludeProperty("address").excludeProperty("province").excludeProper ty("yearofbuild").excludeProperty("zustand")
    .excludeProperty("caution")
    .excludeProperty("balkon")
    .excludeProperty("badmitfenster")

    .excludeProperty("alarmanlage")

    .excludeProperty("garten");


    List list = getSession().createCriteria(Immobilie.class).add(exampleImmo).list();

    return list;
    }

    public List<Immobilie> getBySearch(Immobilie immo) {

    System.out.println("salam1 getbysearch in dao");

    return getHibernateTemplate().find(SEARCH_IMMO_OR_QUERY,
    new Object[]
    {

    immo.getTitle(),
    immo.getCity(),
    immo.getZipcode(),
    immo.getGarten(),
    immo.getBalkon()
    }
    );
    }
    }

    ***********************************************************


    public class ImmobilieBO {

    ImmobilieDAO immodao;
    public List<Immobilie> getBySearch(Immobilie immobilie)
    {

    return immodao.getBySearch(immobilie);
    }


    public List<Immobilie> getByObjectSearch(Immobilie immobilie)
    {

    return immodao.getByObjectSearch(immobilie);
    }
    }


    ******************************************************************++++
    public class SearchView {

    ImmobilieBO immobo;

    String searchCriteria = "and";
    List<Immobilie> result = new LinkedList<Immobilie>();

    public String doSearch()
    {
    result.clear();
    if (searchCriteria.equalsIgnoreCase("and"))
    {

    result = immobo.getByObjectSearch(searchImmo); //searchImmo
    } else {

    result = immobo.getBySearch(searchImmo);
    }

    return "search_" + StdOutcome.GO;
    }
    }
     

  2. #2
    Avatar von Oliver Gierke
    Oliver Gierke Oliver Gierke ist offline Mitglied Rubin
    Registriert seit
    Dec 2003
    Ort
    Mannheim
    Beiträge
    1.457
    Was heißt "kein Ergebnis"?

    Ein paar designtechnische Anmwerkungen:

    Einem Domänenobjekt (deinem BO) eine Referenz auf das DAO zu geben ist eher schlecht. Damit weiß das BO, dass du es persistierst. Ein DAO führt man deshalb ein, um Persistenzoperationen NICHT im Domänenobjekt zu haben. Dein View sollte dann einfach das DAO direkt benutzen anstelle des BO. Desweiteren hast du über dein jetziges Design eine Zyklische Abhängigkeit zwischen DAO und BO. Ebenfalls suboptimal.

    Wenns darum geht schlanke DAO Schichten mit Spring und JPA/Hibernate/EclipseLink zu bauen könntest du dir mal Hades anschauen. Damit entfällt der Implementierungsaufwand für Großteile der CRUD Logik bzw für Queries.

    Gruß
    Ollie
     
    In theory, there is no difference between theory and practice. In practice, there is!

    www.olivergierke.de

  3. #3
    catarina catarina ist offline Mitglied
    Registriert seit
    Jun 2008
    Beiträge
    12
    Hallo,
    danke Oliver für dein teschniche Anmerkungen!

    was mit dem Ergebnis angeht!!
    wenn ich Option oder auswähle, bekomme ich immer alle Angebote ohne ausnahme, obwohl ich das begrentzt habe.

    mit Option Und bekomme ich gar keine Ergebnis!!
    weißt du vielleciht woran es liegt.

    soweit ich weiß!!obwohl ich diese Domänenobjekt (BO) benutzt habe, soll trotzdem funktionieren!!

    Gruß
    Catarina
     

Ähnliche Themen

  1. Hibernate Criteria-Abfrage über mehrere Objekte
    Von pizza1234 im Forum Enterprise Java (JEE, J2EE, Spring & Co.)
    Antworten: 2
    Letzter Beitrag: 18.03.10, 10:02
  2. Hibernate Criteria Javassist
    Von langmar im Forum Enterprise Java (JEE, J2EE, Spring & Co.)
    Antworten: 6
    Letzter Beitrag: 27.08.09, 18:05
  3. Fehler bei Hibernate Abfrage mit Criteria
    Von toroe im Forum Enterprise Java (JEE, J2EE, Spring & Co.)
    Antworten: 1
    Letzter Beitrag: 07.07.09, 10:29
  4. Problem Oder-Verknüpfung Hibernate-Criteria
    Von pizza1234 im Forum Java
    Antworten: 2
    Letzter Beitrag: 08.04.09, 10:34
  5. DTO, Spring und Hibernate
    Von DerGrinsemann im Forum Java
    Antworten: 2
    Letzter Beitrag: 08.06.07, 11:41