Hallo zusammen
ich bin gerade dabei meinen Code zu überarbeiten bzw. ihn zu vereinfachen.
Ich habe in meiner DataBaseHelper Class eigentlich viele gleiche Zeilen in Methoden die immer wieder auftauchen.
Hier mal 2 Beispiele
public boolean addDataSpecial(String id,String LeftHandPlA, String LeftHandPlB, Integer Filter1, Integer Filter2,Integer Favorites,
Integer BallShotTable1A, Integer BallShotTable1B, Integer BallShotTable2A, Integer BallShotTable2B, Integer BallShotTable3A, Integer BallShotTable3B,
Integer BallShotTable4A, Integer BallShotTable4B, Integer BallShotTable5A, Integer BallShotTable5B, Integer BallShotTable6A, Integer BallShotTable6B,
String Description, String ShortDescription,
Integer Trajectory1, Integer SideSpin1, Integer Speed1, Integer BackSpinTop1, Integer Direction1, Integer Trajectory2, Integer SideSpin2, Integer Speed2, Integer BackSpinTop2, Integer Direction2,
Integer Trajectory3, Integer SideSpin3, Integer Speed3, Integer BackSpinTop3, Integer Direction3, Integer Trajectory4, Integer SideSpin4, Integer Speed4, Integer BackSpinTop4, Integer Direction4,
Integer Trajectory5, Integer SideSpin5, Integer Speed5, Integer BackSpinTop5, Integer Direction5, Integer Trajectory6, Integer SideSpin6, Integer Speed6, Integer BackSpinTop6, Integer Direction6, Integer ShotHeight,
Integer FilterCopy, String Link2, String Col54, Integer Col55,Integer Col56, Integer Col57, Integer Col58, Integer Col59, Integer Col60 )
// "Integer BallShotTable3A) //+ String id > könnte eine ID vorgegen
{
SQLiteDatabase db = this.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put(COL1,id);
contentValues.put(COL2, LeftHandPlA);
contentValues.put(COL3, LeftHandPlB);
contentValues.put(COL4, Filter1);
contentValues.put(COL5, Filter2);
contentValues.put(COL6, Favorites);
contentValues.put(COL7, BallShotTable1A);
contentValues.put(COL8, BallShotTable1B);
contentValues.put(COL9, BallShotTable2A);
contentValues.put(COL10, BallShotTable2B);
.....
Alles anzeigen
und
public int updateData(String id, String LeftHandPlA, String LeftHandPlB, Integer Filter1, Integer Filter2, Integer Favorites,Integer BallShotTable1A, Integer BallShotTable1B, Integer BallShotTable2A, Integer BallShotTable2B, Integer BallShotTable3A, Integer BallShotTable3B,
Integer BallShotTable4A, Integer BallShotTable4B, Integer BallShotTable5A, Integer BallShotTable5B, Integer BallShotTable6A, Integer BallShotTable6B,
String Description, String ShortDescription,
Integer Trajectory1, Integer SideSpin1, Integer Speed1, Integer BackSpinTop1, Integer Direction1, Integer Trajectory2, Integer SideSpin2, Integer Speed2, Integer BackSpinTop2, Integer Direction2,
Integer Trajectory3, Integer SideSpin3, Integer Speed3, Integer BackSpinTop3, Integer Direction3, Integer Trajectory4, Integer SideSpin4, Integer Speed4, Integer BackSpinTop4, Integer Direction4,
Integer Trajectory5, Integer SideSpin5, Integer Speed5, Integer BackSpinTop5, Integer Direction5, Integer Trajectory6, Integer SideSpin6, Integer Speed6, Integer BackSpinTop6, Integer Direction6, Integer ShotHeight,
Integer FilterCopy, String Link2, String Col54, Integer Col55,Integer Col56, Integer Col57, Integer Col58, Integer Col59, Integer Col60 )
{
SQLiteDatabase db = this.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put(COL1, id); //0
contentValues.put(COL2, LeftHandPlA);
contentValues.put(COL3, LeftHandPlB);
contentValues.put(COL4, Filter1);
contentValues.put(COL5, Filter2);
contentValues.put(COL6, Favorites); //5
contentValues.put(COL7, BallShotTable1A);
contentValues.put(COL8, BallShotTable1B);
contentValues.put(COL9, BallShotTable2A);
contentValues.put(COL10, BallShotTable2B);
contentValues.put(COL11, BallShotTable3A); //10
contentValues.put(COL12, BallShotTable3B);
contentValues.put(COL13, BallShotTable4A);
contentValues.put(COL14, BallShotTable4B);
.....
Alles anzeigen
Mir geht es hier nicht um die SQLITE Datenbank oder um die Funktion. (Das funktioniert ja alles ordentlich)
Ich würde nur gerne wissen ob es in Java eine Möglichkeit gibt die Zeilen
SQLiteDatabase db = this.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put(COL1, id); //0
contentValues.put(COL2, LeftHandPlA);
contentValues.put(COL3, LeftHandPlB);
contentValues.put(COL4, Filter1);
contentValues.put(COL5, Filter2);
contentValues.put(COL6, Favorites); //5
contentValues.put(COL7, BallShotTable1A);
...
irgendwie auszulagern und sie dann in die Methoden einzubauen.
Einfach gesagt: wenn es eine Änderung in den Zeilen gibt dann bräuchte ich diese nur 1 mal abzuändern und es würde überall passen >d.h. ich muss nicht in mehren Methoden die gleichen Änderungen vornehmen.
Hoffentlich kann man verstehen was ich möchte.
Danke schon mal. Wünsche allen ein Frohes Fest.
Gruß
Norbert