[Java lista] Prepared JPA Query

Szomor Attila aszomor at computertechnika.hu
2009. Aug. 4., K, 14:44:55 CEST


Sziasztok,

A kod teljesen letisztitva, csak insert-re.
Egy find, ha letezik insert kulonben skip.

Környezet:
---------
PostgreSQL x64 (Debian x64-en)
jdk1.6.0_14
OrakleTopLinkEssential
GlassFish AS

Eredmnyek:
==========

Debian x64
----------
  inserted updated skipped processed
[  274278,      0,   7095,   281373]
[#|2009-08-04T13:54:01.455+0200|
[#|2009-08-04T13:48:03.128+0200|
                   5:58.327

Vista x64 (a Debian-on futo PostgreSQL-t hasznalta)
----------
  inserted updated skipped processed
[  274278,      0,   7095,   281373]
[#|2009-08-04T12:32:14.813+0200|
[#|2009-08-04T12:22:31.839+0200|
                   8:42.974

Már így is a preparedStatement-el kikerülte az EM-t, ezt úgy látszik  
adatbázisban kell leprogramozni a JPA ehhez a feladathoz gyengenek tűnik.

Attila.

conn = ds.getConnection();
stmt = conn.prepareStatement("SELECT e.id,e.szcod FROM beavatk_szekszard e
WHERE e.szcod = ?");
while (!reader.isEof()) {
    if ((processedLineCount % 1000) == 0) {
         Logger.debug(...)
    }
    parseLine();
    stmt.setString(1, whoxWhoCom.getWhoCwho());
    rs = stmt.executeQuery();
    if ((rs != null) && rs.next()) {
      BigDecimal id = rs.getBigDecimal(1);
      if (id != null) {
        beavatkSzekszard.setId(id.toBigInteger());
        beavatkSzekszard.setSzcod(rs.getString(2));
      }
    }
    rs.close();
    if ... {
      em.persist(entity);
    }
    reader.ReadNextLine();
}


További információk a(z) Javalist levelezőlistáról