ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:686.62KB ,
资源ID:17714553      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17714553.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(JAVAEE Hibernate关系映射实验剖析Word格式文档下载.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

JAVAEE Hibernate关系映射实验剖析Word格式文档下载.docx

1、是PASSWORD登录密码用户详细信息表:detail主键,自增TRUENAME真实姓名varchar(8)EMAIL电子邮件varchar(50)3在MyEclipse中创建对MySQL的连接1)切换到“MyEclipse Database Explorer”视图,新建MySQL数据库连接驱动。启动MyEclipse,选择【Window】【Open Perspective】【MyEclipse Database Explorer】菜单项,打开MyEclipse Database浏览器,右击菜单,如下图所示,选择【New】菜单项,出现如图所示的对话框,编辑数据库连接驱动。Driver temp

2、late:MySQL Connector/JDriver name:com.mysql.jdbc.Driver(在url中添加characterEncoding参数,否则在数据库中不能显示中文)Connection URL:jdbc:mysql:/localhost:3306/javaee?characterEncoding=gbk注:javaee要修改成你所使用的数据库名称User name:rootPassword:JDBC驱动存放位置:c盘lib文件夹下2)测试连接:在MyEclipse Database浏览器中,右击刚才创建的MyConn数据库连接,选择“Open connection

3、”菜单项,打开名为“MyConn”的数据连接,如图所示: 4. 添加Hibernate开发能力右击项目名lab6,选择【MyEclipse】【Add Hibernate Capabilites】菜单项,出现如下图所示的对话框,选择Hibernate框架应用版本及所需要的类库。单击【Next】按钮,进入如下图所示界面。创建Hibernate配置文件hibernate.cfg.xml,将该文件放在src文件夹下,后面会详细介绍该文件内容。这里先说明添加Hibernate开发功能的步骤。单击【Next】按钮,进入如下图所示界面,指定Hibernate数据库连接细节。由于在前面已经配置一个名为MyCo

4、nn的数据库连接,所以这里只需要选择DB Driver为“MyConn”即可。单击【Next】按钮,出现如下图所示界面。Hibernate中有一个与数据库打交道重要的类Session。而这个类是由工厂SessionFactory创建的。这个界面询问是否需要创建SessionFactory类。如果需要创建,还需要指定创建的位置和类名。这些接口都会在后面详细介绍。单击【Finish】按钮,完成Hibernate的配置。5. 生成数据库表对应的Java类对象和映射文件在MyEclispse下创建一个名为“org.model”的包,这个包将用来存放与数据库表对应的Java类POJO。打开MyEclip

5、se Database Explorer视图。打开前面创建的MyConn数据连接,选择【XSCJ】【TABLE】菜单项,右击相应表(登录表和用户信息表),选择【Hibernate Reverse Engineering】菜单项,如下图所示,将启动Hibernate Reverse Engineering向导,该向导用于完成从已有的数据库表生成对应的Java类和相关映像文件的配置工作。首先,选择生成的Java类和映像文件所在的位置,如图所示。单击【Next】按钮,进入如图所示的界面,选择主键生成策略。下面列举需要修改的代码,修改后的代码如下。Detail.javapackage org.mode

6、l;public class Detail private String email; private Login login; / 省略getter和setter方法及构造函数(反向工程自动生成的构造函数必须有否则操作数据库会报错)Login.javapublic class Login private String password;private Detail detail; / 省略getter和setter方法及构造函数Login.hbm.xml!- name指定POJO类,table指定对应数据库的表 - id name=id type=java.lang.Integer- nam

7、e指定主键,type指定主键类型 -column name=ID length=4 /- 采用foreign标志生成器,直接采用外键的属性值- generator class=foreignparam name=propertydetail/generator/idproperty name=usernamejava.lang.StringUSERNAME/propertypasswordPASSWORDone-to-one name=detail class=org.model.Detail constrained=true/class/hibernate-mappingDetail.hbm

8、.xmlidentitytrueNameTRUENAMEemailEMAIL cascade=all lazy=false注意:检查一下在hibernate.cfg.xml文件中是否已加入配置映射文件的语句mapping resource=org/model/Detail.hbm.xmlorg/model/Login.hbm.xml6. 测试类Test.javaTest.java:/此处省略main方法Session session=HibernateSessionFactory.getSession();Transaction ts=session.beginTransaction(); /

9、 创建事务对象Detail detail=new Detail();Login login=new Login();login.setUsername(yanhong);login.setPassword(123detail.setTruename(严红detail.setEmail(yanhonglogin.setDetail(detail);detail.setLogin(login);session.save(detail);mit();HibernateSessionFactory.closeSession();二、多对多的关系映射1.建立数据库及表结构学生表:studentintSN

10、UMBER学号varchar(10)SNAME姓名SAGE年龄课程表:courseID int CNUMBER 课程号varchar(10) CNAME 课程名varchar(20) 学生选课表(连接表):stu_courSID 学生ID号CID 课程ID号3生成数据库表对应的Java类对象和映射文件打开前面创建的MyConn数据连接,选择【XSCJ】【TABLE】菜单项,右击相应表(学生表和课程信息表),选择【Hibernate Reverse Engineering】菜单项,如下图所示,将启动Hibernate Reverse Engineering向导,该向导用于完成从已有的数据库表生成

11、对应的Java类和相关映像文件的配置工作。Student.javaimport java.util.HashSet;import java.util.Set;public class Student implements java.io.Serializable private int sage; private Set courses=new HashSet(); /省略上述各属性的getter和setter方法及构造函数(反向工程自动生成的构造函数必须有否则操作数据库会报错)Course.javapublic class Course implements java.io.Serializ

12、able private String cname; private Set stus=new HashSet(); /省略上述各属性的getter和setter方法Student.hbm.xmlset name=coursesstu_cour cascade=key column=SID/keymany-to-many class=org.model.Course column=CID/setCourse.hbm.xmlstus org.model.Studentorg/model/Course.hbm.xmlorg/model/Student.hbm.xmlCourse cour1=new

13、 Course();Course cour2=new Course();Course cour3=new Course();cour1.setCnumber(101cour1.setCname(计算机基础cour2.setCnumber(102cour2.setCname(数据库原理cour3.setCnumber(103cour3.setCname(计算机原理Set courses=new HashSet();courses.add(cour1);courses.add(cour2);courses.add(cour3);Student stu=new Student();stu.setSnumber(081101stu.setSname(李方方stu.setSage(21);stu.setCourses(courses);session.save(stu);三、扩展实验:自己完成多对一单向关联和一对多双向关联。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1