Announcement

Collapse
No announcement yet.

selectItems ?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • selectItems ?

    Welche Lösung ist besser? (beides funktioniert!!)

    1. Lösung:

    bean:
    Code:
      public List<SelectItem> listPerson() {
    
    	  List<SelectItem> selectPerson = new ArrayList<SelectItem>();
    
    	  selectPerson = entityManager.createQuery("from Person s").getResultList();
    
    	  return selectPerson;
    
     }
    view:

    Code:
    <h:selectOneMenu value ="#{users.idTeam}">
    <f:selectItems value="#{bean.listPerson()}" var="p" label="#{p.name}"/>
    </h:selectOneMenu>

    oder die zweite Lösung:

    Code:
      public List <Person> listPerson() {
    
      	 return  entityManager.createQuery("from Person p").getResultList();
    
       }
    die view ist dieselbe wie bei der ersten Lösung.

    Was ist besser:

    public List <Person> listPerson()

    oder

    public List<SelectItem> listPerson()

    ???

  • #2
    Hm. Moment mal, wenn du schreibst:

    Code:
      public List<SelectItem> listPerson() {
    
    	  List<SelectItem> selectPerson = new ArrayList<SelectItem>();
    
    	  selectPerson = entityManager.createQuery("from Person s").getResultList();
    
    	  return selectPerson;
    
     }
    ist das das gleiche wie

    Code:
      public List<SelectItem> listPerson() {
    
    	  List<SelectItem> selectPerson;
    
    	  selectPerson = entityManager.createQuery("from Person s").getResultList();
    
    	  return selectPerson;
    
     }
    wie

    Code:
      public List<SelectItem> listPerson() {
    
    	  List<SelectItem> selectPerson = entityManager.createQuery("from Person s").getResultList();
    
    	  return selectPerson;
    
     }
    wie

    Code:
      public List<SelectItem> listPerson() {
    
    	  return entityManager.createQuery("from Person s").getResultList();
    
     }
    Also wie die zweite Variante. Oder wolltest du hier NUR den anderen Typ SelectItem nutzen? Was ist bei dem dem Typ denn anders als bei Person? Eine Kopie der Klassen als Value-Object könnte ich ja noch verstehen, aber so macht das bis auf den Typ keinen Unterschied.

    Grüße

    Christian | tutego

    Comment

    Working...
    X