Hirdetés

Keresés

Új hozzászólás Aktív témák

  • whYz
    őstag

    Nem kifejezetten Java kérdés....de nincs spec topik és lazán kapcsolódik...előre is elnézést. De minden komoly észrevétel jól jön.

    Zöldmezős alkalmazás. DB tervezés. Van egy csomó kis szótár tábla. Ez tipikusan arra van, hogy a legördülőket majd innen töltjük fel. De lenne karbantartó is ezekre a táblákra... Én ezeket a táblákat külön vettem fel... Viszont nemrég jött egy másik ötlet egy kollégától.
    Ő 1 táblát javasol lényegében az összes szótártáblában tárolt adatra.
    TYPE - ID - NAME - SPEC1 - SPEC2 ...stb mezőkkel.
    DOG - 1 - kutyi - szánhúz- null
    CAT - 1 - cica - null - alszik

    Itt lényegében a TYPE tartalmazná a típust és az ID-val együtt alkotná az elsődleges kulcsot...
    Állítólag azért jó, mert nincs sok kis tábla... Én még annyit gondolok mögé, hogy kevesebb JOIN miatt gyors tud maradni a lekérdezés. De nekem zavarja a szemem, hogy eltérő típusú adatokat gyúrunk egybe. Az eltérő típusú objektumok miatt sok a kitöltetlen mező.
    Ráadásul nagy kérdés, hogy amikor mondjuk egy Hibernate-et teszek fölé, akkor mennyire kavarja meg a domaint, hogy minden objektumnál lesz getSpec1() metódus miközben nincs is értelmezve az adott objektumon, mert azt a Spec2 tulajdonságával értelmezzük, és így azért lehetnek fura dolgok a kódban...

    Itt ment valasz.

  • whYz
    őstag

    Az a probléma, hogy a JSON-ben lévő értékek tömbök. Ha ezt az API-t akarod használni, akkor nem a jsonObject.getString(String name) kell neked, hanem jsonObject.getJsonArray(String name), ami listaként kezelhető, iterálható.

    Koszi szepen, getJsonArray gyorsan megoldotta a problemat. :)

  • whYz
    őstag

    Sziasztok

    Adott a kovetkezo JSONObject:

    {
    "success":false,
    "email":[
    "Email must not be empty",
    "Email must be valid email"
    ],
    "password":[
    "Password must not be empty"
    ],
    "firstname":[
    "Firstname must not be empty"
    ],
    "lastname":[
    "Lastname must not be empty"
    ]
    }

    Be szeretnem rakni az errorokat egy stringbe "\n"-el elvalasztva. Tudnatok segiteni, hogy hogyan csinaljam?

    A parameterek megvannak egy HashMap-ben, igy az eddigi probalkozasom igy nez ki:

    String mErrorMsg = "";

    for (String key : params.keySet()){
    if (jsonObject.has(key)){
    if (mErrorMsg != ""){
    mErrorMsg += "\n";
    }
    try {
    mErrorMsg += jsonObject.getString(key);
    } catch (JSONException ignored) {
    }
    }
    }

    A vegeredmeny meg nem tokeletes sajnos, mert ilyesmi lesz:

    ["Email must not be empty"]["Email must be valid email"]
    ["Password must not be empty"]
    ["Firstname must not be empty"]
    ["Lastname must not be empty"]

    Koszi elore is ha tudtok segiteni.

Új hozzászólás Aktív témák