22
Files Required: -------------- com.jlc.bstore .client com.jlc.bstore.dao com.jlc.bstor e.pc com.jlc.bstor e.util Configurat ion ABClient.j ava ACClient.j ava AddressDAO.java AuthorDAO.java BookDAO.java CustomerDAO.java DAOFactory.java DAOFactoryImpl.java HibernateAddressDAO .java HibernateAuthorDAO. java HibernateBookDAO.ja va HibernateCustomerDAO. java HibernateOrderDAO.jav a HibernateOrderItemsDA O.java OrderDAO.java OrderItemsDAO.java Address.java Author.java Book.java Customer.java Order.java OrderItems.ja va Address.hbm.x ml Author.hbm.xm l Book.hbm.xml Customer.hbm. xml Order.hbm.xml OrderItems.hbm .xml HibernateTemplat e.java HibernateUtil .java hibernate. cfg.xml Tables HIBERNATE package com.jlc.bstore.pc; public class Address { private int addId; private String street; private String city; private String state; package com.jlc.bstore.pc; import java.util.*; public class Author { private int authorId; private String aname; private String status; private Set books; public Author() { super(); } public Author(String aname, String status) { super(); this.aname = aname; this.status = status; Address.java www.jlcindia.com .com 40

Hibernate Book

  • Upload
    phani

  • View
    219

  • Download
    0

Embed Size (px)

DESCRIPTION

Hibernate Bo

Citation preview

Files Required: --------------com.jlc.bstore.clientcom.jlc.bstore.dao com.jlc.bstore.pc com.jlc.bstore.util Configuration ABClient.javaACClient.javaAddressDAO.javaAuthorDAO.javaBookDAO.javaCustomerDAO.javaDAOFactory.javaDAOFactoryImpl.javaHibernateAddressDAO.javaHibernateAuthorDAO.javaHibernateBookDAO.javaHibernateCustomerDAO.javaHibernateOrderDAO.javaHibernateOrderItemsDAO.javaOrderDAO.javaOrderItemsDAO.javaAddress.javaAuthor.javaBook.javaCustomer.javaOrder.javaOrderItems.javaAddress.hbm.mlAuthor.hbm.mlBook.hbm.mlCustomer.hbm.mlOrder.hbm.mlOrderItems.hbm.mlHibernate!emplate.javaHibernate"til.javahibernate.c#$.mlTablesHIBERNATEpacka$e com.jlc.bstore.pc%public class Address &private int addId%private 'trin$ street%private 'trin$ city%private 'trin$ state%private Customer customer%public Address() &super()%*public Address('trin$ street+ 'trin$ city+ 'trin$ state) &super()%this.street , street%this.city , city%this.state , state%*-- set-$et methods*packa$e com.jlc.bstore.pc%import java.util..%public class Author &private int authorId%private 'trin$ aname%private 'trin$ status%private 'et books%public Author() &super()%*public Author('trin$ aname+ 'trin$ status) &super()%this.aname , aname%this.status , status%* -- set-$et methods*Address.javaAuthor.java///.jlcindia.comrajivsh0102$mail.com !packa$e com.jlc.bstore.pc%import java.util..%public class Book &private int bookId%private 'trin$ bname%private double cost%private int 3ty%private 'trin$ status%private 'et authors%public Book() &super()%*public Book('trin$ bname+ double cost+ int 3ty+ 'trin$ status) &super()%this.bname , bname%this.cost , cost%this.3ty , 3ty%this.status , status%* --set-$et methods *packa$e com.jlc.bstore.pc%import java.util..%public class Customer &private int cid%private 'trin$ cname%private 'trin$ email%private lon$ phone%private Address address%private 'et orders%public Customer() &super()%*public Customer('trin$ cname+ 'trin$ email+ lon$ phone) &super()%this.cname , cname%this.email , email%this.phone , phone%*-- set-$et methods*4hibernate-mappin$ packa$e,5com.jlc.bstore.pc5 de#ault-la6y,5#alse574class name,5Author5 table,5author8table574id name,5authorId5 column,5authorId5 type,5int574$enerator class,5increment5-74-id74property name,5aname5-74property name,5status5-74set name,5books5 table,5book8author8table574key column,5authorId5-74many-to-many class,5Book5 column,5bookId5-74-set7 4-class74-hibernate-mappin$7Boo".javaCustomer.javaAuthor.hbm.#ml///.jlcindia.comrajivsh0102$mail.com $packa$e com.jlc.bstore.pc%import java.util..%public class Order &private int orderId%private 'trin$ odate%private int total9ty%private double totalcost%private 'trin$ status%private Customer customer%private 'et orderItems%public Order() &super()%-- !ODO Auto-$enerated constructor stub*public Order('trin$ odate+ int total9ty+ double totalcost+ 'trin$ status) &super()%this.odate , odate%this.total9ty , total9ty%this.totalcost , totalcost%this.status , status%* -- set-$et method*packa$e com.jlc.bstore.pc%public class OrderItems &private int orderItemId%private int 3ty%private double cost%private Order order%public OrderItems() &super()%*public OrderItems(int 3ty+ double cost) &super()%this.3ty , 3ty%this.cost , cost%*-- set-$et methods *4hibernate-mappin$ packa$e,5com.jlc.bstore.pc5 de#ault-la6y,5#alse574class name,5Address5 table,5address8table574id name,5addId5 column,5addId5 type,5int574$enerator class,5increment5-74-id74property name,5street5-74property name,5city5-74property name,5state5-74one-to-one name,5customer5 class,5Customer5 property-re#,5address5-74-class74-hibernate-mappin$7Address.hbm.ml%rder.java%rderItems.java&4hibernate-mappin$ packa$e,5com.jlc.bstore.pc5 de#ault-la6y,5#alse574class name,5Book5 table,5book8table574id name,5bookId5 column,5bookId5 type,5int574$enerator class,5increment5-74-id74property name,5bname5-74property name,5cost5 type,5double5-74property name,53ty5 type,5int5-74property name,5status5-74set name,5authors5 table,5book8author8table574key column,5bookId5-74many-to-many class,5Author5 column,5authorId5-74-set74-class74-hibernate-mappin$74hibernate-mappin$ packa$e,5com.jlc.bstore.pc5 de#ault-la6y,5#alse574class name,5Customer5 table,5customer8table574id name,5cid5 column,5cid5 type,5int574$enerator class,5increment5-74-id74property name,5cname5-74property name,5phone5 type,5lon$5-74property name,5email5-74set name,5orders574key column,5cid5-74one-to-many class,5Order5-74-set74many-to-one name,5address5 class,5Address5 column,5addId5 uni3ue,5true5-74-class74-hibernate-mappin$74hibernate-mappin$ packa$e,5com.jlc.bstore.pc5 de#ault-la6y,5#alse574class name,5Order5 table,5order8table574id name,5orderId5 column,5orderId5 type,5int5 74$enerator class,5increment5-74-id74property name,5odate5-74property name,5total9ty5 type,5int5-74property name,5totalcost5 type,5double5-74property name,5status5-74set name,5orderItems574key column,5orderId5-74one-to-many class,5OrderItems5-74-set74many-to-one name,5Customer5 class,5Customer5 column,5cid5 uni3ue,5true5-74-class74-hibernate-mappin$7Boo".hbm.#mlCustomer.hbm.#ml%rder.hbm.#ml///.jlcindia.comrajivsh0102$mail.com '4hibernate-mappin$ packa$e,5com.jlc.bstore.pc5 de#ault-la6y,5#alse574classname,5OrderItems5 table,5orderitem8table574id name,5orderItemId5 column,5orderItemId5 type,5int574$enerator class,5increment5-74-id74property name,53ty5 type,5int5-74property name,5cost5 type,5double5-74many-to-one name,5order5 class,5Order5 column,5orderId5 uni3ue,5true5-74-class74-hibernate-mappin$7packa$e com.jlc.bstore.dao%import com.jlc.bstore.pc..%import java.util..%public inter#ace AddressDAO &public void addAddress(Address add)%public void updateAddress(Address add)%public Address $etAddressById(int aid)%public void setCustomer!oAddress(int cid+int aid)%*packa$e com.jlc.bstore.dao%import java.util..%import com.jlc.bstore.pc..%public inter#ace AuthorDAO &public void addAuthor(Author author)%public void updateAuthor(Author author)%public Author $etAuthorById(int aid)%public :ist $etAuthorBy;ame('trin$ anam)%*packa$e com.jlc.bstore.dao%import com.jlc.bstore.pc..%import java.util..%public inter#ace BookDAO &public void addBook(Book book)%public void updateBook(Book book)%public Book $etBookById(int bid)%public Book $etBookBy;ame('trin$ bname)%public :ist $etBookByCostception e)&e.print'tack!race()%**public void updateAddress(Address add)&ht.updateObject(add)%*public Address $etAddressById(int aid)&Address address,(Address)ht.loadObject(aid+Address.class)%return address%* *%rder(A%.java%rderItems(A%.javaHibernateAddress(A%.java///.jlcindia.comrajivsh0102$mail.com $',!-,&!!-.packa$e com.jlc.bstore.dao%import java.util.:ist%import com.jlc.bstore.pc.Author%import com.jlc.bstore.util.Hibernate!emplate%public class HibernateAuthorDAO implements AuthorDAO&Hibernate!emplate ht,ne/ Hibernate!emplate()%public void addAuthor(Author authors)&ht.saveObject(authors)%*public Author $etAuthorById(int aid)&Author authors,(Author)ht.loadObject(aid+Author.class)%return authors%*public :ist $etAuthorBy;ame('trin$ aname)&:ist list,ht.$etObject?ithH9:0(5#rom Author a /here a.aname5@aname)%return list%*public void updateAuthor(Author authors)&ht.updateObject(authors)%**packa$e com.jlc.bstore.dao%import java.util.:ist%import com.jlc.bstore.pc.Book%import com.jlc.bstore.pc.Customer%import com.jlc.bstore.util.Hibernate!emplate%public class HibernateCustomerDAO implements CustomerDAO&Hibernate!emplate ht,ne/ Hibernate!emplate()%public void addCustomer(Customer cust)&ht.saveObject(cust)%*public Customer $etCustomerById(int cid)&Customer customer,(Customer)ht.loadObject(cid+Customer.class)%return customer%*public :ist $etCustomerBy;ame('trin$ cname)&:ist list,ht.$etObject?ithH9:0(5#rom Customer c /here c.cname,5@cname)%return list%*public void updateCustomer(Customer cust)&ht.updateObject(cust)%**HibernateAuthor(A%.javaHibernateCustomer(A%.java/packa$e com.jlc.bstore.dao%import com.jlc.bstore.pc..%import java.util..%import or$.hibernate.'ession%import or$.hibernate.'essionFactory%import or$.hibernate.!ransaction%import com.jlc.bstore.util..%public class HibernateBookDAO implements BookDAO&Hibernate!emplate ht,ne/ Hibernate!emplate()%public void addBook(Book book)&ht.saveObject(book)%*public Book $etBookById(int bid)&Book book,(Book)ht.loadObject(bid+Book.class)%return book%*public Book $etBookBy;ame('trin$ bname)&Book book,(Book)ht.$etObject?ithH9:(5#rom Book b /here b.bname,5@bname)%return book%*public :ist $etBookByCostception e) &e.print'tack!race()%* *public void updateOrderItem(OrderItems oitem)&ht.updateObject(oitem)%* *Hibernate%rderItems(A%.javacreate database radhika%use radhika%create table Book8table(bookid int primary key+bname varchar(01)+cost int+3ty int+status varchar(01))%create table Author8table(authorId int primary key+aname varchar(01)+status varchar(01))%create table Book8Author8table(bookId int re#erences Book8table+authorId intre#erences Author8table)%create table address8table(addId int primary key+street varchar(01)+city varchar(01)+state varchar(=1))%create table Order8table(orderId int primary key+odate date+total9ty int+totalcost int+status varchar(01)+cidint re#erences customer8table)%create table orderItem8table(orderItemId int primary key+3ty int+cost int+orderId int re#erences order8table)%create table Customer8table(cid int primary key+ cname varchar(01)+email varchar(0A)+phone lon$+addId int re#erences address8table)%+!packa$e com.jlc.bstore.util%import or$.hibernate..%import or$.hibernate.c#$..%import java.util..%public class Hibernate!emplate &public void saveObject(Object obj)&try&'essionFactory s#,Hibernate"til.$et'essionFactory()%'ession session,s#.open'ession()%!ransaction t,session.be$in!ransaction()%session.save(obj)%t.commit()%session.close()%*catch(>ception e)&e.print'tack!race()%**public void updateObject(Object obj)&try&'essionFactory s#,Hibernate"til.$et'essionFactory()%'ession session,s#.open'ession()%!ransaction t,session.be$in!ransaction()%session.update(obj)%t.commit()%session.close()%*catch(>ception e)&e.print'tack!race()%**public Object loadObject(int id+Class cls)&Object obj,null%try&'essionFactory s#,Hibernate"til.$et'essionFactory()%'ession session,s#.open'ession()%!ransaction t,session.be$in!ransaction()%obj,session.load(cls+ne/ Inte$er(id))%t.commit()%session.close()%*catch(>ception e)&e.print'tack!race()%*return obj%*public :ist $etObject?ithH9:0('trin$ h3l)&:ist list,ne/ Array:ist()%try&'essionFactory s#,Hibernate"til.$et'essionFactory()%'ession session,s#.open'ession()%HibernateTemplate.java///.jlcindia.comrajivsh0102$mail.com $',!-,&!!-+$!ransaction t,session.be$in!ransaction()%list,session.create9uery(h3l).list()%t.commit()%session.close()%*catch(>ception e) &e.print'tack!race()%*return list%*public Object $etObject?ithH9:('trin$ h3l)&Object obj,null%try&'essionFactory s#,Hibernate"til.$et'essionFactory()%'ession session,s#.open'ession()%!ransaction t,session.be$in!ransaction()%:ist list,session.create9uery(h3l).list()%obj,list.$et(1)%t.commit()%session.close()%*catch(>ception e) &e.print'tack!race()%*return obj%* *packa$e com.jlc.bstore.client%import java.util.Iterator%import java.util.'et%import com.jlc.bstore.dao..%import com.jlc.bstore.pc..%public class ABClient &public static void main('trin$BC ar$s) &--add booksBookDAO bdao,DAOFactory.$etDAOFactory().$etBookDAO()%Book book0,ne/ Book(5HIB>5+AAA+D+5ok5)%bdao.addBook(book0)%Book book=,ne/ Book(5>EB5+FA1+A+5ok5)%packa$e com.jlc.bstore.util%import or$.hibernate..%import or$.hibernate.c#$..%public class Hibernate"til &static 'essionFactory s#,null%static&try&Con#i$uration c#$,ne/ Con#i$uration().con#i$ure()%s#,c#$.build'essionFactory()%*catch(>ception e)& e.print'tack!race()% **publicstatic 'essionFactory $et'essionFactory()&return s#%* *HibernateTemplate.javaHibernate1til.javaABClient.java///.jlcindia.comrajivsh0102$mail.com +&bdao.addBook(book=)%Book bookG,ne/ Book(5'>!'5+AA1+I+5;ot ok5)%bdao.addBook(bookG)%--add AuthorsAuthorDAO adao,DAOFactory.$etDAOFactory().$etAuthorDAO()%Author a0,ne/ Author(5;A"JH!O;5+5?ork5)%adao.addAuthor(a0)%Author a=,ne/ Author(5EACK'O;5+5?ork5)%adao.addAuthor(a=)%Author aG,ne/ Author(5H>mail())%'ystem.out.println(cust.$etMhone())%.--.--Add OrderitemOrderItemsDAO oidao,DAOFactory.$etDAOFactory().$etOrderItemsDAO()%OrderItems oitem0,ne/ OrderItems(0+F11)%oidao.addOrderItem(oitem0)%OrderItems oitem=,ne/ OrderItems(=+A11)%oidao.addOrderItem(oitem=)%.--.OrderItemsDAO oidao0,DAOFactory.$etDAOFactory().$etOrderItemsDAO()%oidao0.setOrder!oOrderItem(0+0)%oidao0.setOrder!oOrderItem(0+=)%.-**ACClient.java$',!-,&!!-+.4hibernate-con#i$uration74session-#actory74property name,5connection.driver8class57com.mys3l.jdbc.Driver4-property74property name,5connection.url57jdbcPmys3lP--localhost-radhika4-property74property name,5connection.username57root4-property74property name,5connection.pass/ord57rajiv4-property74property name,5dialect57or$.hibernate.dialect.Ly'9:Dialect4-property74property name,5sho/8s3l57true4-property74mappin$ resource,5com-jlc-bstore-pc-Customer.hbm.ml5-7 4mappin$ resource,5com-jlc-bstore-pc-Author.hbm.ml5-7 4mappin$ resource,5com-jlc-bstore-pc-Order.hbm.ml5-74mappin$ resource,5com-jlc-bstore-pc-Book.hbm.ml5-74mappin$ resource,5com-jlc-bstore-pc-Address.hbm.ml5-7 4mappin$ resource,5com-jlc-bstore-pc-OrderItems.hbm.ml5-7 4-session-#actory74-hibernate-con#i$uration7hibernate.cfg.#mlExecute ABClient.java 3444444444444444444444444444444444444444444444444444444444444444443 E#ecute add boo"s and add authors344444444444444444444444444mys3l7 select 5 from Boo"6table7@--------@-----------@------@------@--------@Q bookid Q bname Q cost Q 3tyQ status Q@--------@-----------@------@------@--------@Q0 Q HIB> QAAA QD Q ok QQ= Q >EB QFA1 QA Q ok QQG Q '>!'QAA1 QI Q ;ot ok Q@--------@-----------@------@------@--------@ -------------------------------------------P e#ecute set Author part P---------------------------------------------------mys3l7 select . #rom Book8Author8table%@--------@----------@Q bookId Q authorId Q@--------@----------@Q0 Q0 QQ0 QG QQ= Q= QQ= QG QQG QG Q@--------@----------@-------------------------------------------PE#ecute get info from boo"Id P-----------------------------------------------= >EB FA1.1 A okG H>!' AA1.1 I ;ot ok0 HIB> AAA.1 D okmys3l7 select 5 from Author6table7@----------@----------@----------@Q authorId Q anameQ statusQ@----------@----------@----------@Q0 Q ;A"JH!O; Q ?orkQQ= Q EACK'O;Q ?orkQQG Q H>