Hibernate 自动生成XML的工具及步骤
MyEclipse生成数据库对应的.hbm.xml及JavaBean

MyEclipse生成数据库对应的和JavaBean在hibernate中,每个数据表对应的实际上是一个实体类,每个实体类有一个对应的配置文件和你般配,myeclipse中其实有个MyEclipseDatabaseExplorer视图,它供给了myeclipse与数据库直接连结的内置窗口,而且经过此窗口能够生成hibernate的mapping文件。
1.在项目上点击右键选择MyEclipse选项,为应用增添Hibernate特征.2.在出现的配置窗口中,选中“AddHibernate librariestoproject?”,而后设定寄存Hibernate库文件的目录为:/WEB-INF/lib目录,默认会选择创立一个新的Hibernate配置文件。
3.点击下一步,进入Hibernate数据库连结配置界面,在ConnectionProfile选项中直接选择在MyEclipseDatabaseExplorer中配置的vipdata选项,而后就会自动生成其余的配置,能够选择“CopyJDBCDriverandaddtoclasspath”,这样就会将JDBC驱动拷贝到WEB-INF/lib目录中。
:4.点击下一步,来创立Hibernate的SessionFactory类,这是一个简单的集中管理Hibernate会话的工厂类,填写类的全名称。
5.点击达成,而后MyEclipse就会将Hibernate有关的jar包拷贝到lib目录下,同时会生成Hibernate的配置文件:,和SessionFactory类。
此刻要利用MyEclipseDatabaseExplorer视图中的工具来生成Hibernate的映照文件。
切换到MyEclipseDatabaseExplorer视图,在表vipdata上点击右键,选择CreateHibernateMapping.6.配置生成的长久化类和映照文件。
7.点击Browse,选择生成的类和映照文件的包:Generator算法选项,选择native。
hibernate的基本用法

hibernate的基本用法Hibernate是一个开源的Java框架,用于简化数据库操作。
它为开发人员提供了一个更加简单、直观的方式来管理数据库,同时也提高了应用程序的性能和可维护性。
本文将逐步介绍Hibernate的基本用法,包括配置、实体映射、数据操作等。
一、配置Hibernate1. 下载和安装Hibernate:首先,我们需要下载Hibernate的压缩包并解压。
然后将解压后的文件夹添加到Java项目的构建路径中。
2. 创建Hibernate配置文件:在解压后的文件夹中,可以找到一个名为"hibernate.cfg.xml"的文件。
这是Hibernate的主要配置文件,我们需要在其中指定数据库连接信息和其他相关配置。
3. 配置数据库连接:在"hibernate.cfg.xml"文件中,我们可以添加一个名为"hibernate.connection.url"的属性,用于指定数据库的连接URL。
除此之外,还需要指定数据库的用户名和密码等信息。
4. 配置实体映射:Hibernate使用对象关系映射(ORM)来将Java类映射到数据库表。
我们需要在配置文件中使用"mapping"元素来指定实体类的映射文件。
这个映射文件描述了实体类与数据库表之间的对应关系。
二、实体映射1. 创建实体类:我们需要创建一个Java类,用于表示数据库中的一行数据。
这个类的字段通常与数据库表的列对应。
同时,我们可以使用Hibernate提供的注解或XML文件来配置实体的映射关系。
2. 创建映射文件:可以根据个人喜好选择使用注解还是XML文件来配置实体类的映射关系。
如果使用XML文件,需要创建一个与实体类同名的XML文件,并在其中定义实体类与数据库表之间的映射关系。
3. 配置实体映射:在配置文件中,我们需要使用"mapping"元素来指定实体类的映射文件。
Hibernate(6)—— 一对多和多对多关联关系映射(xml和注解)总结

Hibernate(6)——一对多和多对多关联关系映射(xml和注解)总结涉及的知识点总结如下:∙One to Many 映射关系o多对一单向外键关联(XML/Annotation)o一对多单向外键关联(XML/Annotation)o懒加载和积极加载o一对多双向外键关联(XML/Annotation)∙Many to Many 映射关系o多对多单向外键关联(XML/Annotation)o多对多双向外键关联(XML/Annotation)o set的inverse元素详解∙问题小结∙关联关系的优缺点多对一单向外键关联关系注意多对一关联是多方持有一方的引用。
看一个例子,去淘宝购物,那么一个淘宝用户可以对应多个购物订单,如图所示:多的一方是Orders,持有一方的引用,也就是Users,而在Users中无需作任何定义,从订单到用户的关系是单向多对一关联。
对应数据库就是:还有比如说学生和班级的关系,多个学生可以属于同一个班级,这就是从学生到班级也是典型的单向多对一关系,看代码实现:基于注解的多对一单向外键关联:单向多对一关联中,多方需要持有一方的引用,那么多方(学生类)需要额外配置,需要对持有的一方引用使用注解@ManyToOne (cascade={CascadeType.ALL}, fetch=FetchType.EAGER),设置为级联操作和饥渴的抓取策略,@JoinColumn(name="cid"),而一方(教室类)无需做任何多方的定义。
注意;多方必须保留一个不带参数的构造器!importjavax.persistence.Entity;importjavax.persistence.GeneratedValue;importjavax.persistence.Id;//班级类,在多对一关系中属于一的方,不持有其他多余的配置,反而是被多方持有@Entitypublic class ClassRoom {private intcid;//班级编号private String cname;//班级名称// 自动增长的主键@Id@GeneratedValuepublicintgetCid() {returncid;}public void setCid(intcid) {this.cid = cid;}public String getCname() {returncname;}public void setCname(String cname) {ame = cname;}}View Code一方——班级类无需做多余的定义,下面是多方——学生实体和配置:importjavax.persistence.CascadeType;importjavax.persistence.Entity;importjavax.persistence.FetchType;importjavax.persistence.GeneratedValue;importjavax.persistence.Id;importjavax.persistence.JoinColumn;importjavax.persistence.ManyToOne;//学生实体类,属于多对一的多方,持有班级(一方)的引用@Entitypublic class Students {private intsid; //编号private String sname; //姓名private ClassRoom classroom;//学生班级//注意:多方一定要显式的定义不带参数的构造方法public Students() {}public Students(String sname){this.sname = sname;}// 多方使用注解:@ManyToOne// fetch=FetchType.EAGER,急加载,加载一个实体时,定义急加载的属性会立即从数据库中加载。
Hibernate自动生成实体类注解

在过去几年里,Hibernate不断发展,几乎成为Java数据库持久性的事实标准。
它非常强大、灵活,而且具备了优异的性能。
在本文中,我们将了解如何使用Java 5 注释来简化Hibernate代码,并使持久层的编码过程变得更为轻松。
传统上,Hibernate的配置依赖于外部 XML 文件:数据库映射被定义为一组 XML 映射文件,并且在启动时进行加载。
在最近发布的几个Hibernate版本中,出现了一种基于 Java 5 注释的更为巧妙的新方法。
借助新的 Hibernate Annotation 库,即可一次性地分配所有旧映射文件——一切都会按照您的想法来定义——注释直接嵌入到您的Java 类中,并提供一种强大及灵活的方法来声明持久性映射。
即利用hibernate注解后,可不用定义持久化类对应的*.hbm.xml文件,直接以注解方式写入在持久化类中来实现。
Hibernate annotation使用了ejb JPA的注解,所以,下面安装配置hibernate annotation环境时,需要导入ejb的包。
许多网上的资料都是jpa hibernate annotation方面的资料。
常用的hibernate annotation标签如下:@Entity --注释声明该类为持久类。
将一个Javabean类声明为一个实体的数据库表映射类,最好实现序列化.此时,默认情况下,所有的类属性都为映射到数据表的持久性字段.若在类中,添加另外属性,而非映射来数据库的, 要用下面的Transient来注解.@Table(name="promotion_info") --持久性映射的表(表名="promotion_info).@Table是类一级的注解,定义在@Entity下,为实体bean映射表,目录和schema的名字,默认为实体bean的类名,不带包名.@Id--注释可以表明哪种属性是该类中的独特标识符(即相当于数据表的主键)。
idea自动生成hibernate实体类

idea⾃动⽣成hibernate实体类1. DataBase -> + -> Data Source -> MySQL2. 填写 host、port、URL等信息后 -> TestConection(注:第⼀次测试连接需先安装插件)测试连接:成功 3.4.添加hibernate配置⽂件<?xml version='1.0' encoding='utf-8'?><!DOCTYPE hibernate-configuration PUBLIC"-//Hibernate/Hibernate Configuration DTD//EN""/dtd/hibernate-configuration-3.0.dtd"><hibernate-configuration><session-factory><!-- 主要三部分配置--><!-- 1.配置数据库信息,必须的--><property name="connection.url">jdbc:mysql://192.168.0.108:3306/ecai?serverTimezone=Asia/Shanghai</property> <property name="connection.driver_class">com.mysql.cj.jdbc.Driver</property><property name="ername">root</property><property name="connection.password">root</property><!-- 2.配置hibernate信息,可选的--><!-- 输出底层的sql语句--><property name="hibernate.show_sql">true</property><!-- 对底层sql进⾏格式化--><property name="hibernate.format_sql">true</property><!--配置数据的⽅⾔,如mysql中limitoracle的rownum--><property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property><property name="hibernate.current_session_context_class">thread</property><!-- 3.把映射⽂件配置到核⼼⽂件中,必须的--></session-factory></hibernate-configuration>hibernate.cfg.xml5. 添加hibernate配置⽂件成功后,左下⾓将出现 Persistence窗⼝,右击第⼀⾏的项⽬名6. 7.例:⽣成后的实体类package orm.entity;import javax.persistence.*;import java.math.BigDecimal;/*** <p>** </p>** @author: zeng* @since: 2020-03-26*/@Entity@Table(name = "merchant", schema = "ecai", catalog = "") public class MerchantEntity {private int id;private String code;private String account;private String password;private String nickname;private BigDecimal balance;private int status;private int roleId;private String secretKey;private String registTime;private String loginTime;private String loginIp;private String loginPlat;private String ips;private String phone;private String email;private String qq;private String wechat;@Id@Column(name = "id")public int getId() {return id;}public void setId(int id) {this.id = id;}@Basic@Column(name = "code")public String getCode() {return code;}public void setCode(String code) {this.code = code;}@Basic@Column(name = "account")public String getAccount() {return account;}public void setAccount(String account) {this.account = account;}@Basic@Column(name = "password")public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}@Basic@Column(name = "nickname")public String getNickname() {return nickname;}public void setNickname(String nickname) {this.nickname = nickname;}@Basic@Column(name = "balance")public BigDecimal getBalance() {return balance;}public void setBalance(BigDecimal balance) {this.balance = balance;}@Column(name = "status")public int getStatus() {return status;}public void setStatus(int status) {this.status = status;}@Basic@Column(name = "role_id")public int getRoleId() {return roleId;}public void setRoleId(int roleId) {this.roleId = roleId;}@Basic@Column(name = "secret_key")public String getSecretKey() {return secretKey;}public void setSecretKey(String secretKey) {this.secretKey = secretKey;}@Basic@Column(name = "regist_time")public String getRegistTime() {return registTime;}public void setRegistTime(String registTime) {this.registTime = registTime;}@Basic@Column(name = "login_time")public String getLoginTime() {return loginTime;}public void setLoginTime(String loginTime) {this.loginTime = loginTime;}@Basic@Column(name = "login_ip")public String getLoginIp() {return loginIp;}public void setLoginIp(String loginIp) {this.loginIp = loginIp;}@Basic@Column(name = "login_plat")public String getLoginPlat() {return loginPlat;}public void setLoginPlat(String loginPlat) {this.loginPlat = loginPlat;}@Basic@Column(name = "ips")public String getIps() {return ips;}public void setIps(String ips) {this.ips = ips;}@Basic@Column(name = "phone")public String getPhone() {return phone;}public void setPhone(String phone) {this.phone = phone;}@Basic@Column(name = "email")public String getEmail() {return email;}public void setEmail(String email) {this.email = email;}@Basic@Column(name = "qq")public String getQq() {return qq;}public void setQq(String qq) {this.qq = qq;}@Basic@Column(name = "wechat")public String getWechat() {return wechat;}public void setWechat(String wechat) {this.wechat = wechat;}@Overridepublic boolean equals(Object o) {if (this == o) return true;if (o == null || getClass() != o.getClass()) return false;MerchantEntity that = (MerchantEntity) o;if (id != that.id) return false;if (status != that.status) return false;if (roleId != that.roleId) return false;if (code != null ? !code.equals(that.code) : that.code != null) return false;if (account != null ? !account.equals(that.account) : that.account != null) return false;if (password != null ? !password.equals(that.password) : that.password != null) return false;if (nickname != null ? !nickname.equals(that.nickname) : that.nickname != null) return false;if (balance != null ? !balance.equals(that.balance) : that.balance != null) return false;if (secretKey != null ? !secretKey.equals(that.secretKey) : that.secretKey != null) return false;if (registTime != null ? !registTime.equals(that.registTime) : that.registTime != null) return false;if (loginTime != null ? !loginTime.equals(that.loginTime) : that.loginTime != null) return false;if (loginIp != null ? !loginIp.equals(that.loginIp) : that.loginIp != null) return false;if (loginPlat != null ? !loginPlat.equals(that.loginPlat) : that.loginPlat != null) return false;if (ips != null ? !ips.equals(that.ips) : that.ips != null) return false;if (phone != null ? !phone.equals(that.phone) : that.phone != null) return false;if (email != null ? !email.equals(that.email) : that.email != null) return false;if (qq != null ? !qq.equals(that.qq) : that.qq != null) return false;if (wechat != null ? !wechat.equals(that.wechat) : that.wechat != null) return false;return true;}@Overridepublic int hashCode() {int result = id;result = 31 * result + (code != null ? code.hashCode() : 0);result = 31 * result + (account != null ? account.hashCode() : 0);result = 31 * result + (password != null ? password.hashCode() : 0);result = 31 * result + (nickname != null ? nickname.hashCode() : 0);result = 31 * result + (balance != null ? balance.hashCode() : 0);result = 31 * result + status;result = 31 * result + roleId;result = 31 * result + (secretKey != null ? secretKey.hashCode() : 0);result = 31 * result + (registTime != null ? registTime.hashCode() : 0);result = 31 * result + (loginTime != null ? loginTime.hashCode() : 0);result = 31 * result + (loginIp != null ? loginIp.hashCode() : 0);result = 31 * result + (loginPlat != null ? loginPlat.hashCode() : 0);result = 31 * result + (ips != null ? ips.hashCode() : 0);result = 31 * result + (phone != null ? phone.hashCode() : 0);result = 31 * result + (email != null ? email.hashCode() : 0);result = 31 * result + (qq != null ? qq.hashCode() : 0);result = 31 * result + (wechat != null ? wechat.hashCode() : 0);return result;}}Bean。
Eclipse下配置和使用Hibernate Tools

Eclipse下配置和使用Hibernate Tools文章分类:Web前端关键字: hibernate tools eclipse 插件配置Hibernate Tools可以通过访问已经建立好的数据库以反向工程方式生成POJO文件。
今天就来说一下如何使用Hibernate Tools来生成POJO。
1、首先,要去Hibernate的网站下载这个工具包。
一个大约14M的ZIP压缩文件。
/sourceforge/jboss/HibernateTools-3.2.4.Beta1-R200810311334.zip2、解压缩下载好的文件,释放出features和plugins这两个文件夹和其中的内容。
完成后将这两个文件夹复制到Eclipse的目录下(这两个文件夹在Eclipse中是默认存在的,直接复制就行了)。
3、到这步为止HibernateTools的安装就算结束了,下面开始配置和具体使用。
一开始选择工程下的SRC 目录,然后右键New->Other->Hibernate->Hibernate Configuration File(cfg.xml),在弹出的窗口中选择Next ,进入到下面的选项中。
注意,这个地方有几项是一定要填写的。
他们分别是Database dialect(数据库方言)、Driver class(数据库驱动)、Connection URL(链接字符串)以及Username和Password(访问数据库的用户名和密码)。
上图图中使用的是MySQL5数据库的配置,vane是我机器中已经创建好的数据库。
使用其他数据库的时候会略有不同。
填好之后选择Finish。
4、选择Eclipse的下拉菜单Window->Show View->Other->Hibernate->Hibernate Configurations,现在就可以查看Hibernate的配置窗口了。
hibernate的用法
Hibernate是一个Java的持久化框架,它提供了一种将对象映射到关系数据库的方法。
以下是Hibernate的基本用法:配置Hibernate:首先,你需要配置Hibernate。
这通常涉及到创建hibernate.cfg.xml或application.properties (取决于你使用的配置方式)文件,并指定数据库连接信息、方言和驱动程序。
创建实体类:创建一个Java类来表示数据库中的表。
这个类应该使用@Entity注解,并且类名应该与表名相对应。
类的属性应该使用@Column注解来指定列名和数据类型。
创建映射文件:创建一个XML文件来定义实体类与数据库表之间的映射关系。
这个文件应该使用hbm.xml 作为文件扩展名,并且应该放在与实体类相同的包中。
映射文件应该指定实体类和表之间的对应关系,以及属性的映射方式。
创建Hibernate的SessionFactory:使用SessionFactory来创建Session对象。
SessionFactory是Hibernate的核心,它负责创建Session实例并提供对数据库的持久化操作。
创建Session:通过调用SessionFactory的openSession()方法来创建Session对象。
Session代表与数据库的一次会话,提供了对实体的CRUD操作(创建、读取、更新和删除)。
执行持久化操作:使用Session对象执行持久化操作。
例如,可以使用save()方法将一个实体保存到数据库中,使用get()方法根据ID检索实体,使用update()方法更新实体,使用delete()方法删除实体等。
关闭Session和SessionFactory:完成对数据库的操作后,应该关闭Session和SessionFactory以释放资源。
通常,这可以通过在finally块中调用Session.close()和SessionFactory.close()来完成。
MyEclipse自动生成映射文件
设置数据库连接转换视图创建新的数据库连接设置数据库连接的属性值填写正确信息以后,点击完成即可.生成配置文件首先建立好WEB工程,并且将包层次建立好.在工程中加入Hibernate的包首先选中你的工程,加入Hibernate的库添加Hibernate的jar包到自己的工程:选择Hibernate.cfg.xml配置文件存放的地方:告诉配置文件连接数据库的信息:告诉Hibernate工具类放在哪里:生成工具类后,需要将getSession这个方法中的实现获取方式改成sessionFactory.getCurrentSession()即可.接下来,将C3P0的包copy到我们的lib目录下,并添加常用的Hibernate开关项,可以直接从以前的文件中copy,还可以用界面化的方式添加.生成类的映射文件建表,并将外键关系建立.CREATE TABLE `students` (`id` varchar(32) NOT NULL,`name` varchar(20) default NULL,`student_id` varchar(32) default NULL,PRIMARY KEY (`id`),CONSTRAINT FOREIGN KEY (`student_id`) REFERENCES `myclass` (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;CREATE TABLE `myclass` (`id` varchar(32) NOT NULL,`name` varchar(20) default NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8; 转换视图生成映射文件与实体类选择Model类存放的地方:选中必要的选项选择主键生成的策略:设置类名与数据库的对应关系点击完成,然后回到MyEclipse视图即可看到生成的文件.这里我们用到了源目录,所以生成的文件会放在src目录下,还是需要我们手动将生成的类文件与映射文件放到model目录下。
在IntellijIDEA下通过Hibernate逆向生成实体类
在IntellijIDEA下通过Hibernate逆向⽣成实体类前⾔:在IDEA中,通过相关插件,可以利⽤Hibernate逆向⽣成数据表对应的实体类。
具体操作及注意事项见本篇随笔。
1.创建⼀个基于maven的hibernate⼯程。
并在⼯程中添夹hibernate核⼼配置⽂件hibernate.cfg.xml,其⼯程结构如下图所⽰。
其中,hibernate.cfg.xml的配置如下:1<?xml version='1.0' encoding='utf-8'?>2<!DOCTYPE hibernate-configuration PUBLIC3 "-//Hibernate/Hibernate Configuration DTD//EN"4 "/dtd/hibernate-configuration-3.0.dtd">5<hibernate-configuration>6<session-factory>78<!-- 主要三部分配置-->9<!-- 1.配置数据库信息,必须的-->10<property name="connection.url">jdbc:mysql://localhost:3306/hibernatestudy?useUnicode=true&characterEncoding=UTF-8</property>11<property name="connection.driver_class">com.mysql.jdbc.Driver</property>12<property name="ername">root</property>13<property name="connection.password"></property>1415<!-- 2.配置hibernate信息,可选的-->1617<!-- 输出底层的sql语句-->18<property name="hibernate.show_sql">true</property>1920<!-- 对底层sql进⾏格式化-->21<property name="hibernate.format_sql">true</property>2223<!--配置数据的⽅⾔,如mysql中limit24 oracle的rownum-->25<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>2627<property name="hibernate.current_session_context_class">thread</property>2829<!-- 3.把映射⽂件配置到核⼼⽂件中,必须的-->3031</session-factory>32</hibernate-configuration>View Code注意:该配置⽂件中对数据库的相关信息进⾏能配置,在后续逆向⽣成实体类的时候,⼜会⽣成数据库信息,所以建议在使⽤插件⽣成实体类时,将数据库配置信息注释,实体类⽣成完后,在将其打开。
系统学习hibernate之一:利用hibernate中的SchemaExport生成数据表
系统学习hibernate之一:利用hibernate中的
SchemaExport生成数据表
PS:一般在项目开发过程中,使用比较多的就是先建好表,再利用hibernate反向工程生成*.hbm.xml文件跟POJO类,个人认为由于目前所使用的数据库都是关系数据库,而hibernate作为一个 ORM,把对数据库的操作都对象化了,更应当从对象出发,生成数据库里面相关表,这样更加符合人认知事物的习惯。
由于hibernate3提供了自带的工具hbm2ddl,建立根据你的对象建立数据库是一件非常简单的事情。
Demo结构图如下:
### direct log messages to stdout ###
log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target=System.out
yout=org.apache.log4j.PatternLayo ut
yout.ConversionPattern=%d{ABSOL UTE} %5p %c{1}:%L - %m%n
### set log levels - for more verbose logging change 'info' to 'debug' ###
log4j.rootLogger=warn, stdout
PS:要在mysql数据库里面先建立好usertest表,然后运行
UserTest类,这样就可以顺利通过hibernate3提供了自带的工具hbm2ddl,建立根据你的对象建立数据库相关表。
打开mysql数据库:
大功告成!。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一步:
Hibernate Tools的Eclipse3.5.2安
装
笔者Eclipse版本3.5.2,由于不太喜欢啰嗦,不喜欢费话,直接看图,有图有真相。
Step1:
Step2:由于Hibernate Tools集成于JBoss,在这里添加JBoss的安装站点
Step3:在下图对话框中输入http://download.jboss.org/jbosstools/updates/stable/,由于笔者已安装所有会提
示"Duplicate location"
Step4:上一步完成后,回到Available Software,选择刚添加的站点,点开JBoosTools,选择Hibernate Tools
接下来就没啥讲的了,一路点过去
第二步:
【图】Hibernate Tools-代码生成
建立好数据库后,点击一个键,代码就生成了,这实在是份十分惬意的事情,前面有介绍Hibernate Tools就可以生成
代码,那么我们怎么利用它来生成代码呢。
下面就把详细步骤贴出来,同样,有图有真相。
Step1:安装好Hibernate Tools,建立一个Dynamic web project,笔者工程名为“HibernateTest”
Step2:笔记以Mysql为示例,所以安装一个Mysql,建立相应测试数据库及表,下图为笔者的数据库及表
Step3:将MySql的Jdbc驱动拷贝至lib目录,笔者的为mysql-connector-java-5.1.14-bin.jar,可以去Mysql
官网下载
Step4:利用Hibernate Tools生成hibernate.cfg.xml文件,如下图:
点击后可以对hibernate.cfg.xml命令,不管它直接默认转到下一步的配置界面,笔者的配置如下图:
点击完成后,它将生成如下xml的配置文件
?
1
hibernate-configuration PUBLIC
"-//Hibernate/Hibernate
Configuration DTD
3.0//EN"
"http://hibernate.sourceforge.net/hibernate-config
uration-3.0.dtd">
name="hibernate.connection.url">jdbc:mysql://localhost:3306/javadb
property>
name="hibernate.dialect">org.hibernate.dialect.MySQLDialecty>
Step5:Hibernate Console 配置
a.右键工程,点击Run as-Run Configurations进入如下界面并选择Hibernate Console Configuration:
b.新建一个Configure名为HibernateConsole,名字可随个人爱好来命名
笔者各标签页配置如下:
Step6:利用Hibernat Tools生成reveng.xml
a.工程中右键如下图,添加reveng.xml
b.没啥说的命个名,选择放置位置
c.按照箭头方向进行操作,选择console的配置,再点击刷新,就能看到数据库中的表,将它们Include进来,如下图
d:最终效果
Step7:这是最后一步了,激动人心的时刻就要到了
a.在Eclipse的工具栏中将Hibernate Code Generate显示出来,显示出来后点击Hibernate Code Generate
Configurations,如下图:
b.Main标签页中选择控制台,选择文件输出路径,包名,reveng.xml文件
c.Exporters标签页,选择要生成的文件,记得勾上Hebernate xml Mappings及Hebernate xml Configuration,
它们将自动生成映射文件并注册,
配置好后,点击Run即可生成代码。
大功告成,最后的生成的代码结构如下图:
感谢你的阅读,希望本文对你有用!
第三步:
【图】Hibernate Tools-代码生成
Hibernate3.6采用的slf4j的版本是1.6.1
可以去官网下载地址如下:
http://www.slf4j.org/download.html
下载slf4j-1.6.1.zip版本,然后将slf4j-log4j12-1.6.1.jar及log4j-1.2.15.jar加入项目并配置相应的log4j属
性文件即可