[Java lista] Hibernate + enum mapping

Sandor Szilagyi szilsan at gmail.com
2007. Okt. 8., H, 13:17:48 CEST


Helo!

Koszonom a hozzaszolasokat.
Kozben rajottem tobbekkel konzultalva, hogy nem tul jo otlet, ha az
enum-ban levo ertekeket belegyurom az adatbazisba (mint konstansokat
valamilyen tablaba). Ezzel mondjuk elveszitem azt a lehetosegem, hogy
hibas ertek beirasakor a db dobjon egy hibat,  viszont ha a kodban
valtozik valami, akkor nem kell ujra butykolni az egeszet.
Szoval ez vegulis nem kerul be DB-be. Amugy oracle ala megy a cucc.

Koszonom meg egyszer,
szilsan

On 10/8/07, istvan benedek <istvan.benedek at gmail.com> wrote:
> Sandor,
>
> Mi valami ilyesmit szoktunk hasznalni : @Enumerated(EnumType.STRING) ez
> megoldja valszeg a problemadat.
>
> Best regards,
> István Benedek
> Software Engineer
>
>
> B2 International Ltd.
> Budapest office, Hungary (GMT+1)
>
> Madach Square 3, Floor 3
> 1075 Budapest
> Hungary
>
> Cell phone: +36 (70) 375-4286
> E-mail : ibenedek at b2international.com
> Homepage: http://www.b2international.com
>
> -----Original Message-----
> From: javalist-bounces at javagrund.hu [mailto:javalist-bounces at javagrund.hu]
> On Behalf Of Avramucz István
> Sent: Monday, October 08, 2007 9:07 AM
> To: javalist at javagrund.hu
> Subject: Re: [Java lista] Hibernate + enum mapping
>
> Ajánlom ezt az oldalt: http://www.hibernate.org/172.html
>
> AI
>
> Sandor Szilagyi írta:
> > Udv!
> >
> > Az lenne a gondom, hogy van egy entity bean-em, amiben az egyik field
> > enum tipusu. A hbm2ddl-el probalok belole csinalni egy sql scriptet,
> > de az enum tipus az sql-ben mint number(10,0) jelenik meg. Vagy
> > stringkent, attol fugg mit allitok be.
> > A gond az, hogy az enom-om nem jelenik meg a scriptben (vagyis nem
> > kerul tarolasra a DB-ben) - vagyis a kesobbiekben barmilyen ertek
> > kerulhet abba a mezobe, nem kapok hibat.
> > A kod, roviden:
> >
> > Entity
> > @Table(name = "Blacklist")
> > public class Blacklist {
> >    @Id
> >    @Column(name = "msisdn", length = 20)
> >    String msisdn;
> >
> >    @Enumerated
> >    BlacklistTypeEnum type;
> > }
> >
> > Generalas utan kapom:
> > [hibernatetool]     create table Blacklist (
> > [hibernatetool]         msisdn varchar2(20 char) not null,
> > [hibernatetool]         type_ID number(10,0),
> > [hibernatetool]         primary key (msisdn)
> > [hibernatetool]     );
> >
> > Hogy tudnam belerakni az enum-ot a DB-be? (vagyis a type csak abbol
> > vehessen fel erteket)
> >
> > Koszonom,
> > szilsan
> >
> > U.I. Remelem nem irtam nagy hulyeseget :)
> > _______________________________________________
> > Javalist mailing list
> > Javalist at javagrund.hu
> > http://javagrund.hu/mailman/listinfo/javalist
> >
> >
>
> _______________________________________________
> Javalist mailing list
> Javalist at javagrund.hu
> http://javagrund.hu/mailman/listinfo/javalist
>
> _______________________________________________
> Javalist mailing list
> Javalist at javagrund.hu
> http://javagrund.hu/mailman/listinfo/javalist
>


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