# ArrayList Datensätze komplett löschen



## JonnieWalker (12. Apr 2010)

leute kurze frage

das ist der befehl wenn ich auf den button löschen drücke.
er soll mir nicht nur einen gewählten datensatz löschen sondern alles.

db.loescheDoppelteWoerter((Words)jListDopWoerter.getSelectedValue());

das getSelectedValue() ist doch falsch oder?


----------



## eRaaaa (12. Apr 2010)

Also von der Überschrift her würde ich sagen, du suchst:
List (Java Platform SE 6)

Anhand deiner Beschreibung und vor allem dem Code, bin ich mir da aber nicht mehr so sicher ?! ^^


----------



## ARadauer (12. Apr 2010)

kommt auf db drauf an... was ist das und welche Methoden bietet es?


----------



## JonnieWalker (19. Apr 2010)

das ist meine methode die nicht nur einen Datensatz löschen soll sondern die komplette liste


```
Diese Methode ist aus meiner Klasse Datenbanken
    public void loescheStoppWort(Words w) {
        try {
            String sql = null;
            sql = "delete from eloftswords where word =? ";
            PreparedStatement befehl = v2.prepareStatement(sql);
            befehl.setString(1, w.toString());
            befehl.executeUpdate();
            befehl.close();
        } catch (Exception ex) {
        }
    }

ich will aber das er alle löscht und nicht nur ein einziges Wort dann was ich markiert habe.
```


```
Das ist die Aktion auf den Button die er ausführen soll zum löschen des Datensatzes:

db.loescheDoppelteWoerter((Words) jListDopWoerter.getSelectedValue());
        JOptionPane.showMessageDialog(this, "Die Wörter wurden entfernt");
```
Wie gesagt er löscht immer nur das ausgewählte.


----------



## fastjack (19. Apr 2010)

Na dann mußt Du die Liste durchgehen und jedes Word einzeln löschen.


----------



## JonnieWalker (19. Apr 2010)

ich möchte aber gerne das er alle löscht und nicht jedes wort einzeln.
wenn ich z.b 30 wörter habe die doppelt vorkommen, kann ich doch nicht dem user zumuten das
er sich jedes wort anklickt und dann löscht!


----------



## fastjack (19. Apr 2010)

Deswegen, eine Schleife schreiben, die die Liste mit Wörtern durchgeht und AUTOMATISCH jedes Wort einzeln löscht.


----------



## JonnieWalker (19. Apr 2010)

ok und wie?
dumme frage vllt aber echt keine ahnung wie ich es machen soll:S


----------



## Gast2 (19. Apr 2010)

Gehen wir davon aus du hast eine Liste mit Elementen die du löschen willst:


```
for(Wort w : wortListe){
  loescheStoppWort(w)
}
```



Gehen wir mal davon aus das du eine JList mit Wort Objekten hast:

```
JList list = new JList();	
list.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
Object[] selectedValues = list.getSelectedValues();
for(Object o : selectedValues){
    loescheStoppWort((Wort) o);
}
```

Dann musst du dir nur noch überlegen wie du sie aus dem ListModel deiner JList entfernst  Kannst ja mal ein bisserl überlegen.


----------

