[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