Avatar billede elites Nybegynder
07. oktober 2002 - 11:34 Der er 2 kommentarer

container managed autoincrement

Hejsa

Jeg er ved at få min bønne til at auto incremente i databasen..

Den måde jeg har gjort det på er ved ikke at føre nogle parametre med create().

Den autoincremter så også, men returnerer ikke en instans af bønnen, hvilket vil sige at jeg ikke kan sette de andre atributter!

Hvordan gør man dette???
Jeg anvender en MySQL database, hvor jeg normalt bare fører null med som parameter og opnår derved auto increment!

På forhånd tak
Henrik
Avatar billede logical Nybegynder
05. november 2002 - 07:50 #1
??

CMP/BMP?

Lidt mere kode gør måske, at jeg kan forstå hvad du mener. Alternativt lidt mere forklaring :-)
Avatar billede davsclaus Nybegynder
07. november 2002 - 16:39 #2
Jeps det er først med JDBC 3.0 at man kan bede om at få retuneret en
evt. autoinc. værdi, men der går nok et godt stykke tid før vi ser JDBC driverere som er oppe på v3.0.

Hvis du lader databasen sørge for logikken med "autoinc", så bliver du nød til at lave et opslag ned i DB'en for at få aflæst hvad nummeret blev. Så du kan retunere en primary key i din ejbCreate metode, så containeren ved hvilken værdi den fik. Husk at tænke på hvis en anden entity lige er blevet oprettet i mellemtiden (noget med at isolere databasen, elller lave en SQL select på alle de parametre du lige satte ind med INSERT INTO ...)

Jeg syntes også det er noget rod at det ikke er blevet en krav til EJB2.0 at generering af nøgler skulle være en sag for containeren. Men det må vi altså stadig slås med.

Der findes flere J2EE patterns ude på nettet til det med nøgler, men de går på at nøglen bliver generet i java koden, og altså ikke fra databasen.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester