Você está na página 1de 4

Criando um CRUD com Eclipse e Hibernate

Passos Iniciais
1. &. ,. 1. 4. 5. Baixar o Hibernate de www.hibernate.org e a biblioteca JS ! em http"##$stl.$a%a.net# 'o Eclipse ap(s criar o pro$eto) ir em *roperties + Ja%a Build *ath e aba !ibraries Bot-o ./dd !ibrar0.... 2p3-o .User !ibrar0. Selecionar o nome para a no%a biblioteca /dicionar as seguintes classes" 1. Hibernate,.$ar &. odas da *asta lib6re7uired ,. odas da *asta lib6$pa 1. odas da *asta lib6b0tecode6$a%assist 8. /dicionar o dri%er JDBC do banco

Mapeamentos no Arquivo de Configurao


1. Sal%ar um ar7ui%o com o nome hibernate.c9g.xml na pasta src. &. Criar o mapeamento D 2 ,. /pontar esse mapeamento na tag :/**;'< do hibernate.c9g.xml

Para usar a API do Hibernate


1. Criar a Session =actor0 &. Criar um ob$eto Session para a Session =actor0 ,. Usar o ob$eto Session para sal%ar o ob$eto

Fontes dos Arquivos


hibernate.c9g.xml
<?xml version='1.0' encoding='utf-8'?> <!DOC !"# $i%ern&te-configur&tion "'()*C +-,,-i%ern&te,-i%ern&te Configur&tion D D ..0,,#/+ +$tt01,,$i%ern&te.sourceforge.net,$i%ern&te-configur&tion-..0.dtd+> <$i%ern&te-configur&tion> <session-f&ctor2> <0ro0ert2 n&me=+$i%ern&te.connection.driver3cl&ss+>com.m2s4l.5d%c.Driver<,0ro0ert2> <0ro0ert2 n&me=+$i%ern&te.connection.url+>5d%c1m2s4l1,,loc&l$ost1..06,$i%ern&te? use'nicode=true<,0ro0ert2> <0ro0ert2 n&me=+$i%ern&te.connection.usern&me+>root<,0ro0ert2> <0ro0ert2 n&me=+$i%ern&te.connection.0&ss7ord+>root<,0ro0ert2> <0ro0ert2 n&me=+connection.0ool3si8e+>1<,0ro0ert2> <0ro0ert2 n&me=+di&lect+>org.$i%ern&te.di&lect.92:;)Di&lect<,0ro0ert2> <0ro0ert2 n&me=+c&c$e.0rovider3cl&ss+>org.$i%ern&te.c&c$e./oC&c$e"rovider<,0ro0ert2> <0ro0ert2 n&me=+s$o73s4l+>f&lse<,0ro0ert2> <0ro0ert2 n&me=+$i%ern&te.$%m<ddl.&uto+>cre&te<,0ro0ert2> <!-- u0d&te --> <!-- 9&0e&mentos --> <m&00ing cl&ss=+org.dto.'serDet&ils+ ,> <,session-f&ctor2> <,$i%ern&te-configur&tion>

org.dto.userDetails.$a%a
0&c=&ge org.dto> im0ort 5&v&x.0ersistence.#ntit2> im0ort 5&v&x.0ersistence.*d> im0ort 5&v&x.0ersistence. r&nsient> ?#ntit2

C@'D com -i%ern&te

1 , A

0u%lic cl&ss 'serDet&ils B ?*d 0riv&te int user*d> 0riv&te :tring user/&me> 0u%lic int get'ser*dCD B return user*d> E 0u%lic void set'ser*dCint user*dD B t$is.user*d = user*d> E 0u%lic :tring get'ser/&meCD B return user/&me> E 0u%lic void set'ser/&meC:tring user/&meD B t$is.user/&me = user/&me> E E

org.dao.userDao.$a%a
0&c=&ge org.d&o> im0ort 5&v&.util.Frr&2)ist> im0ort 5&v&.util.)ist> im0ort im0ort im0ort im0ort im0ort org.dto.'serDet&ils> org.$i%ern&te.;uer2> org.$i%ern&te.:ession> org.$i%ern&te.:essionG&ctor2> org.$i%ern&te.cfg.Configur&tion>

0u%lic cl&ss 'serDFO B 0riv&te 0riv&te 0riv&te 0riv&te :essionG&ctor2 sessionG&ctor2> :ession session> 'serDet&ils user> int cod*d>

0u%lic void setCod*dCint cod*dD B t$is.cod*d = cod*d> E 0u%lic 'serDet&ils get'serCD B return user> E 0u%lic void set'serC'serDet&ils userD B t$is.user = user> E 0riv&te void &%rir r&ns&c&oCD B sessionG&ctor2 = ne7 Configur&tionCD.configureCD.%uild:essionG&ctor2CD> session = sessionG&ctor2.o0en:essionCD> session.%egin r&ns&ctionCD> E 0riv&te void fec$&r r&ns&c&oCD B session.get r&ns&ctionCD.commitCD> session.closeCD> E 0u%lic )ist<'serDet&ils> get)ist&rCD B )ist<'serDet&ils> list& = ne7 Frr&2)ist<'serDet&ils>CD> tr2 B &%rir r&ns&c&oCD> ;uer2 4uer2 = session.cre&te;uer2C+from 'serDet&ils+D> list& = 4uer2.listCD> fec$&r r&ns&c&oCD> E c&tc$ C $ro7&%le eD B E return list&>
C@'D com -i%ern&te < , A

E 0u%lic %oole&n getO%terCD B tr2 B &%rir r&ns&c&oCD> user = C'serDet&ilsDsession.getC'serDet&ils.cl&ssH cod*dD> fec$&r r&ns&c&oCD> return true> E c&tc$ C $ro7&%le eD B :2stem.out.0rintlnC+*D1 + I e.get9ess&geCDD> return f&lse> E E 0u%lic %oole&n get*ncluirCD B tr2 B &%rir r&ns&c&oCD> session.s&veCuserD> fec$&r r&ns&c&oCD> return true> E c&tc$ C $ro7&%le eD B return f&lse> E E 0u%lic %oole&n getFlter&rCD B tr2 B &%rir r&ns&c&oCD> session.u0d&teCuserD> fec$&r r&ns&c&oCD> return true> E c&tc$ C $ro7&%le eD B return f&lse> E E 0u%lic %oole&n get#xcluirCD B tr2 B &%rir r&ns&c&oCD> session.deleteCuserD> fec$&r r&ns&c&oCD> return true> E c&tc$ C $ro7&%le eD B return f&lse> E E E

>EB?;'=#$sp9#cabec.$sp9
<J? 0&ge l&ngu&ge=+5&v&+ content 20e=+text,$tml> c$&rset=*:O-88KL-1+ 0&ge#ncoding=+*:O-88KL-1+J> <J?t&gli% 0refix=+c+ uri=+$tt01,,5&v&.sun.com,5s0,5stl,core+ J> <!DOC !"# $tml "'()*C +-,,M.C,,D D - 9) A.01 r&nsition&l,,#/+ +$tt01,,777.7..org, @,$tmlA,loose.dtd+> <$tml> <$e&d> <met& $tt0-e4uiv=+Content- 20e+ content=+text,$tml> c$&rset=*:O-88KL-1+> <title>Controle de 'suNrios<,title>

index.$sp
<J?include file=+M#(-*/G,5s0f,c&%ec.5s0f+ J> <%od2> <$.>C&d&str&r 'suNrio<,$.> <form &ction=+user*C.5s0+> *dentific&OPo1 <in0ut n&me=+id+ si8e=+K+,><%r,> /ome1 <in0ut n&me=+nome+ si8e=+K0+,><%r,><%r,> <in0ut t20e=+su%mit+,> <,form> <$.>'suNrios C&d&str&dos<,$.> <t&%le st2le=+7idt$180J+ %order=1> <tr> <t$ st2le=+7idt$1K00x+>*D<,t$>
C@'D com -i%ern&te . , A

<t$>/ome<,t$> <t$ st2le=+7idt$1800x+>FOPo<,t$> <,tr> <5s01use(e&n id=+d&o+ cl&ss=+org.d&o.'serDFO+ sco0e=+0&ge+ ,> <c1for#&c$ v&r=+col+ items=+QBd&o.list&rE+> <tr> <td>QBcol.user*dE<,td> <td>QBcol.user/&meE<,td> <td> <& $ref=+userF#.5s0?id=QBcol.user*dE+>F) <,&> <& $ref=+user#C.5s0?id=QBcol.user*dE+>#RC<,&> <,td> <,tr> <,c1for#&c$> <,t&%le> <,%od2> <,$tml>

user;C.$sp
<5s01use(e&n id=+user+ cl&ss=+org.dto.'serDet&ils+ sco0e=+0&ge+ ,> <5s01set"ro0ert2 n&me=+user+ 0ro0ert2=+user*d+ v&lue=+QB0&r&m.idE+,> <5s01set"ro0ert2 n&me=+user+ 0ro0ert2=+user/&me+ v&lue=+QB0&r&m.nomeE+,> <5s01use(e&n id=+d&o+ cl&ss=+org.d&o.'serDFO+ sco0e=+0&ge+ ,> <5s01set"ro0ert2 n&me=+d&o+ 0ro0ert2=+user+ v&lue=+QBuserE+,> QBd&o.incluirE

user/E.$sp
<J?include file=+M#(-*/G,5s0f,c&%ec.5s0f+ J> <5s01use(e&n id=+d&o+ cl&ss=+org.d&o.'serDFO+ sco0e=+0&ge+ ,> <5s01set"ro0ert2 n&me=+d&o+ 0ro0ert2=+cod*d+ v&lue=+QB0&r&m.idE+,> <%od2> <$.>9odific&r &s 'suNrio<,$.> <c1c$oose> <c17$en test=+QBd&o.o%ter &nd d&o.user != nullE+> <form &ction=+userFC.5s0+> *dentific&OPo1 <in0ut n&me=+id+ si8e=+K+ re&donl2 v&lue=+QBd&o.user.user*dE+,><%r,> /ome1 <in0ut n&me=+nome+ si8e=+K0+ v&lue=+QBd&o.user.user/&meE+,><%r,><%r,> <in0ut t20e=+su%mit+,> <,form> <,c17$en> <c1ot$er7ise>@egistro nPo existe!<,c1ot$er7ise> <,c1c$oose> <,%od2> <,$tml>

user/C.$sp
<5s01use(e&n id=+user+ cl&ss=+org.dto.'serDet&ils+ sco0e=+0&ge+ ,> <5s01set"ro0ert2 n&me=+user+ 0ro0ert2=+user*d+ v&lue=+QB0&r&m.idE+,> <5s01set"ro0ert2 n&me=+user+ 0ro0ert2=+user/&me+ v&lue=+QB0&r&m.nomeE+,> <5s01use(e&n id=+d&o+ cl&ss=+org.d&o.'serDFO+ sco0e=+0&ge+ ,> <5s01set"ro0ert2 n&me=+d&o+ 0ro0ert2=+user+ v&lue=+QBuserE+,> QBd&o.&lter&rE

userEC.$sp
<5s01use(e&n id=+user+ cl&ss=+org.dto.'serDet&ils+ sco0e=+0&ge+ ,> <5s01set"ro0ert2 n&me=+user+ 0ro0ert2=+user*d+ v&lue=+QB0&r&m.idE+,> <5s01use(e&n id=+d&o+ cl&ss=+org.d&o.'serDFO+ sco0e=+0&ge+ ,> <5s01set"ro0ert2 n&me=+d&o+ 0ro0ert2=+user+ v&lue=+QBuserE+,> QBd&o.excluirE

C@'D com -i%ern&te

A , A

Você também pode gostar