就业hibernate day03上课笔记1实体类属性对应表主键_第1页
就业hibernate day03上课笔记1实体类属性对应表主键_第2页
就业hibernate day03上课笔记1实体类属性对应表主键_第3页
就业hibernate day03上课笔记1实体类属性对应表主键_第4页
就业hibernate day03上课笔记1实体类属性对应表主键_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

112hibernate-3(1)crudsaveOrUpdate(2)4hibernate5hibernate绑定6hibernate其他的api(查询QueryCriteriaSQLQuery11一对多(客户和联系人多对多(用户和角色22hibernate一对多操作(重点一对多映射配置(最重点一对多 -cascade值save--cascade值(4)inverseinverse属性值2、会用一对多 存和级联删4、做级联删除时候,如果inverse属性true之后,必须配置cascade值3hibernate多对多 -cascade值save-(3)多对多级联删除(了解--cascade值存5、hibernate多对多配置缺陷:第三张表只有两个字段(外键表与表之间关系回顾(重点11客户:有业务往来,公司级别客户, 、新浪、谷2用户:比 角色:比如总经理 可以 ,可以33 ,一 只能有一个妻子,一个女人只能有一个丈Hibernate的一对多操作(重点一对多映射配置(重点第一步创建两个实体类,客户和联系人(1)-一个客户里面有多个联系人,使用set//hibernate使用setprivateSet<LinkMan>setLinkMan=newpublicSet<LinkMan>getSetLinkMan()return}publicvoidsetSetLinkMan(Set<LinkMan>setLinkMan)this.setLinkMan=}-privateCustomerpublicCustomergetCustomer()return}publicvoidsetCustomer(Customercustomer)this.customer=}-set集合表示所有联系人,在客户映射文件中,表示所有在客户里面表示所有联系人,配置实体类set集合<set <key因为 <one-to-many<!--配置联系人实体类里面客户对象属性<many-to-onename="customer"class="cn.itheima.entity.Customer"第四步创 配置文件,把映射文件引入 配置文件01存2一对多级11(1)存publicvoidtestSave1()SessionFactorysessionFactory=null;Sessionsession=null;Transactiontx=trysessionFactory=HibernateUtils.getSessionFactory();session=sessionFactory.openSession();tx=//1Customercustomer=new LinkManlinkmannewLinkMan(); //2//2.1//2.2//3调用方法保存}catch(Exceptione){}finally}}(2) publicvoidtestAddDemo2(){SessionFactorysessionFactory=null;Sessionsession=null;Transactiontx=null;try{sessionFactory=session=tx=////1Customercustomer=newCustomer(); LinkManlinkmannewLinkMan(); //2//3}catch(Exceptione)}finally}}112(1)cascade(1)idsession里面delete3(1)ididinverse11在进行级联操作时候会产生多余的sql(1)解决方案:因为hibernate是双向 (2)(3)在放弃关 映射文件中,进行配置,在 上使用inverse属33inverse(1)如果做级联删除时候,不配置cascade属性delete-联系人外键设置nullinverse属性为truecascade属性属性Hibernate多对多映射配置(会用第一步创建实体类,用户和角色(1)一个用户里面表示所有角色,使用set//用户里面所有角色,使用setprivateSet<Role>setRole=newpublicSet<Role>getSetRole()return}publicvoidsetSetRole(Set<Role>setRole)this.setRole=}(2)一个角色有多个用户,使用set//角色所有用户,使用setprivateSet<User>setUser=newpublicSet<User>getSetUser()return}publicvoidsetSetUser(Set<User>setUser)this.setUser=}-在用户里面表示所有角色,使用name属性:所有角色set

table<setname="setRole"<key<!--classcolumn<many-to-many -在角色里面表示所有用户,使用table属性:和用户里面配置第三张表名称一样<setname="setUser"<key<many-to-many 键多对多级 publicvoidtestSave()SessionFactorysessionFactory=null;Sessionsession=null;Transactiontx=null;try{sessionFactory=session=tx=//1Useruser1=newUser();Useruser2=newUser();Roler1=newRole();Roler2=newRole(); Roler3=newRole();//2//user1--r1/r2//user2--r2/r3//3}catch(Exceptione){}finally}}多对多级联删除(了解和javajava 第一步在 第三张表关系(掌握112id3id让lucy用户有manager//1根据idUserlucy=session

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论