一、ORM

O:object 对象
R:Realtion 关系(关系型数据库)
M:Mapping 映射
ORM:对象关系型映射
目前流行的编程语言,如Java、C# ,它们都是面向对象的编程语言,而目前主流的数据库产品例如Oracle、DB2等,依然是关系型数据库。编程语言和底层数据库发展的不协调(阻抗不匹配,例如数据库中无法直接实现存储继承、多态、封装等特征和行为),催生出了ORM框架。ORM框架可以作为面向对象语言和关系型数据库之间的桥梁。
二、Hibernate
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
三、hibernate框架在eclipse下的配置方法,这里我们以hibernate3.2为例,介绍一下hibernate3.2在eclipse里的配置方法:
(1)打开eclipse,设置其工作空间,点击OK,进入eclipse主界面。
(2)首先我们创建一个java项目,File->new->java Project->创建项目名称,这里我们以ones为例。
(3)导入我们所需要的JAR包,这里我们需要导入3类jar包,首先是hibernate3.jar,是使用hibernate时必备的库。lib文件中的所有文件。数据库连接jar包,这里以mysql数据库文件,我们需要导入的jar包是mysql.jar。这里我们创建一个用户自己的类库,可以将我们的jar包直接导入user library中,当我们再建立其他的项目时,就避免了再重新一个一个的引入jar包。
创建步骤如图所示:
(4)点击Add External JARs... 以此导入上述jar包,点击OK,finish完成操作。此时,项目名下可看到名为first的用户自定义类库。
(5)我们在src文件目录下导入hibernate.cfg.xml文件。这里我们所需要更改的内容为第7行,localhost/ones(ones更改为自己的数据库名)
第9行为mysql用户名,第10行为mysql数据库的密码。第14行代码删掉。
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <property name="hibernate.connection.url">jdbc:mysql://localhost/ones</property> <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <property name="hibernate.connection.username">root</property> <property name="hibernate.connection.password">88888888</property> <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property> <property name="hibernate.show_sql">true</property> <mapping resource="com/bjsxt/hibernate/User.hbm.xml"/> </session-factory> </hibernate-configuration>
(6)在src下建立用户类以及映射文件。Src右键->New->Class->选择类名,这里我们创建名为User的类。
(7)编写用户类代码(这里eclipse支持批量自动写入set/get方法)点击Source->Generate Ftters and Setters 选择全部,导入。User类已经编写完成,接下来我们编写映射文件。
package ones;
public class User {
private String id;
private String name;
private String password;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
(8)选择User.hbm.xml文件,拷入Src文件夹下的包中,文件位置在hiberate\rg\org\hiberate\auction中,这里我们所要修改的代码是第6行,org.hibernate.auction改为自己项目的包名。第八行代码,可以只保留<Class name="User">,其余部分可以删掉。第九行代码删掉。将第12行的native删掉,native是配置整形数据的,我们之前设置的id为字符型,所以这里我们改为uuid,15行至50行,删掉。在<class>中编写属性,属性值等于User.java中定义的属性(不包括id)。
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping
package="org.hibernate.auction">
<class name="User" table="AuctionUser" lazy="true">
<comment>Users may bid for or sell auction items.</comment>
<id name="id">
<generator class="native"/>
</id>
<natural-id mutable="true">
<property name="userName"
length="10"/>
</natural-id>
<property name="password"
not-null="true"
length="15"
column="`password`"/>
<property name="email"/>
<component name="name">
<property name="firstName"
length="50"
not-null="true"/>
<property name="initial"
column="`initial`"/>
<property name="lastName"
length="50"
not-null="true"/>
</component>
<bag name="bids"
inverse="true"
cascade="save-update,lock">
<key column="bidder"/>
<one-to-many class="Bid"/>
</bag>
<bag name="auctions"
inverse="true"
cascade="save-update,lock">
<key column="seller"/>
<one-to-many class="AuctionItem"/>
</bag>
</class>
</hibernate-mapping>
(9)编写后的User.hbm.xml文件如图所示:
<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="ones"> <class name="User" > <id name="id"> <generator class="uuid"/> </id> <property name="name"></property> <property name="password"></property> </class> </hibernate-mapping>
(10)编写导入类,建立名为ExportDB的类,直接产生它的主方法
package ones;
import org.hibernate.cfg.Configuration;
import org.hibernate.tool.hbm2ddl.SchemaExport;
public class ExportDB {
public static void main(String[] args) {
//读取文件的配置
Configuration cfg = new Configuration().configure();
SchemaExport export = new SchemaExport(cfg);
export.create(ture, ture);
}
}
(11)修改hibernate.cfg.xml中的第14行代码,将路径改为ones(包名)/User.hbm.xml
(12)在mysql数据库 中建立测试表,运行eclipse中的ExportDB文件,右键->Run As->java Application
以上这篇基于hibernate框架在eclipse下的配置方法(必看篇)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
# eclipse配置hibernate
# Java的Hibernate框架结合MySQL的入门学习教程
# Java的Hibernate框架中的基本映射用法讲解
# Eclipse添加xml文件提示及Hibernate配置学习
# 自己的
# 编程语言
# 右键
# 给大家
# 为例
# 所需要
# 创建一个
# 面向对象
# 如图所示
# 都是
# 是一个
# 类库
# 出了
# 其他的
# 希望能
# 自定义
# 当我们
# 这篇
# 必看
# 介绍一下
相关文章:
网页设计与网站制作内容,怎样注册网站?
常州企业网站制作公司,全国继续教育网怎么登录?
高性能网站服务器部署指南:稳定运行与安全配置优化方案
北京专业网站制作设计师招聘,北京白云观官方网站?
建站主机功能解析:服务器选择与快速搭建指南
建设网站制作价格,怎样建立自己的公司网站?
h5在线制作网站电脑版下载,h5网页制作软件?
网站制作难吗安全吗,做一个网站需要多久时间?
c# 在ASP.NET Core中管理和取消后台任务
如何有效防御Web建站篡改攻击?
婚礼视频制作网站,学习*后期制作的网站有哪些?
php8.4新语法match怎么用_php8.4match表达式替代switch【方法】
武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?
如何在云指建站中生成FTP站点?
如何基于云服务器快速搭建个人网站?
湖州网站制作公司有哪些,浙江中蓝新能源公司官网?
建站之星在线版空间:自助建站+智能模板一键生成方案
建站主机系统SEO优化与智能配置核心关键词操作指南
如何通过商城自助建站源码实现零基础高效建站?
网站按钮制作软件,如何实现网页中按钮的自动点击?
Android自定义listview布局实现上拉加载下拉刷新功能
制作表格网站有哪些,线上表格怎么弄?
最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?
长沙做网站要多少钱,长沙国安网络怎么样?
C#怎么使用委托和事件 C# delegate与event编程方法
股票网站制作软件,网上股票怎么开户?
建站主机选哪家性价比最高?
如何选择靠谱的建站公司加盟品牌?
如何在沈阳梯子盘古建站优化SEO排名与功能模块?
常州自助建站:操作简便模板丰富,企业个人快速搭建网站
制作门户网站的参考文献在哪,小说网站怎么建立?
微课制作网站有哪些,微课网怎么进?
哈尔滨网站建设策划,哈尔滨电工证查询网站?
网站制作知乎推荐,想做自己的网站用什么工具比较好?
香港服务器建站指南:免备案优势与SEO优化技巧全解析
如何在服务器上配置二级域名建站?
大连网站制作公司哪家好一点,大连买房网站哪个好?
javascript中对象的定义、使用以及对象和原型链操作小结
官网自助建站平台指南:在线制作、快速建站与模板选择全解析
宝塔建站教程:一键部署配置流程与SEO优化实战指南
为什么Go需要go mod文件_Go go mod文件作用说明
企业宣传片制作网站有哪些,传媒公司怎么找企业宣传片项目?
深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?
定制建站流程步骤详解:一站式方案设计与开发指南
建站主机SSH密钥生成步骤及常见问题解答?
如何正确选择百度移动适配建站域名?
香港服务器网站卡顿?如何解决网络延迟与负载问题?
建站之星ASP如何实现CMS高效搭建与安全管理?
合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?
jQuery 常见小例汇总
*请认真填写需求信息,我们会在24小时内与您取得联系。