Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。

一、环境搭建:(将jar包导入项目lib文件夹下)

导入hibernate的jar包:lib/required文件夹下的所有jar包

导入jdbc的jar包

二、配置hibernate   (建立hibernate.cfg.xml文件)

在project文件夹中搜索cfg.xml文件,里面找到带username,password,jdbc的来改

每个配置的值,在project/etc找到hibernate.properrties文件找

<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"> <hibernate-configuration>
<session-factory>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property> <!--数据库方言 ,在project/etc找到hibernate.properrties文件,找到数据库对应的方言 -->
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <!-- 驱动 -->
<property name="hibernate.connection.username">root</property> <!-- 数据库账号 -->
<property name="hibernate.connection.password"></property> <!-- 数据库密码 -->
<property name="hibernate.connection.url">jdbc:mysql://127.0.0.1:3306/mydb</property><!-- 数据库链接 -->
<property name="show_sql">true</property> <!--在控制台打印出sql语句 true为打印,flase为不打印 --> <mapping resource="com/maya/model/family.hbm.xml"/> <!-- mapping 映射加载 用/隔开,不是用.隔开 -->
</session-factory>
</hibernate-configuration>

三、准备数据库

四、准备实体类(get  set)

五、准备映射文件(文件名.hbm.xml     文件名对应着实体类的名)

在project文件夹中搜索hbm.xml文件,复制到与实体类相同的包内,实体类对应着映射文件,hibernate的xml文件不要放进实体类的包内

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping default-lazy="false" package="com.maya.model"> <class name="Family" table="family">        <!-- 实体类 对应的哪个表 -->
<id name="ids">                <!-- id代表的是主键列 type 、column 如果实体类和数据库表中的数据类型一样 可以省略 -->
<generator class="assigned"/>      <!-- 主键列如何产生的assigned 非自增长,赋值 native自增长-->
</id>
<property name="infoCode"/>      <!-- property代表非主键列 -->
<property name="name"/>
<property name="title"/>
<property name="firm"/>
<property name="orders"/>
</class>
</hibernate-mapping>

六、测试配置是否正确

package com.maya.test;
import org.hibernate.*;
import org.hibernate.cfg.*; //org.hibernate.cfg.Configuration;需要的是这个包
public class Test { public static void main(String[] args) {
//读取hibernate.cfg.xml文件的配置,加载Hibernate的类库
Configuration config=new Configuration().configure();//自动找到hibernate.cfg.xml 读取出里面的配置
SessionFactory factory=config.buildSessionFactory(); //factory意思是工厂
Session session=factory.openSession(); //打开一个session
//利用session 对数据库进行CRUD操作(增删改查)
// session.save(arg0) 保存 update(arg0) 更新 createQuery(arg0) 查询 delete(arg0)删除 System.out.print(session.isConnected()); //测试一下是否能够链接数据库
session.close();
}
}

注意:这里的Session 和web中的session不一样

这里的session是程序与数据库之间的会话,它是由hibernate控制管理的

hibernate 框架搭建的更多相关文章

  1. SSH(Struts2+Spring+Hibernate)框架搭建流程<注解的方式创建Bean>

    此篇讲的是MyEclipse9工具提供的支持搭建自加包有代码也是相同:用户登录与注册的例子,表字段只有name,password. SSH,xml方式搭建文章链接地址:http://www.cnblo ...

  2. Hibernate框架搭建实例

    一,Hibernate是一个持久层,是一个专门负责管理数据库连接的框架: 二,Hibernate的搭建实例: 1.在Hibernate的官方网站(http://www.hibernate.org)可以 ...

  3. javaWeb项目(SSH框架+AJAX+百度地图API+Oracle数据库+MyEclipse+Tomcat)之二 基础Hibernate框架搭建篇

    我们在搭建完Struts框架之后,从前台想后端传送数据就显得非常简单了.Struts的功能不仅仅是一个拦截器,这只是它的核心功能,此外我们也可以自定义拦截器,和通过注解的方式来更加的简化代码. 接下来 ...

  4. hibernate框架搭建

    hibernate框架的搭建步骤: 1.导包 2.创建数据库准备表 3.书写orm元数据(对象与表的映射配置文件) 4.书写配置文件 5.书写代码测试 一.导包: 创建web-maven工程添加hib ...

  5. 基于Maven的S2SH(Struts2+Spring+Hibernate)框架搭建

    1. 前言 基于Maven的开发方式开发项目已经成为主流.Maven能很好的对项目的层次及依赖关系进行管理.方便的解决大型项目中复杂的依赖关系.S2SH(Struts2+Spring+Hibernat ...

  6. 在Eclipse中使用Struts和Hibernate框架搭建Maven Web项目

    前言 学习使用Java还是2012年的事情,刚开始学习的Java的时候,使用的是MyEclipse工具和SSH框架.初学者适合使用MyEclipse,因为他将struts.Spring和Hiberna ...

  7. ORM进阶:Hibernate框架搭建及开发

    本节将開始.使用hibernate搭建持久层.当然在决定用不用之前,还请斟酌一下是否使用.了解一下Hibernate的优缺点. Hibernate优劣对照 Hibernate是一个持久的ORM框架.首 ...

  8. SSH(Struts2+Spring+Hibernate)框架搭建流程

    添加支持 我先介绍的是MyEclipse9的自带框架支持搭建过程:(完全的步骤 傻瓜式的学习..~) 首先我们来搭建一个Web项目: 一.Hibernate(数据层)的搭建: 相关描述 Ⅰ.服务器与数 ...

  9. Spring+Spring MVC+Hibernate框架搭建实例

    前言:这里只是说明整个搭建流程,并不进行原理性的讲解 一 下面所需要用到的数据库配置: 数据库方面,使用mysql创建一个users表,具体代码如下: 1 2 3 4 5 6 7 8 9 10 11 ...

随机推荐

  1. eclipse配置python插件

    eclipse配置python主要可以分为以下几个步骤完成: 1. 安装python,python主要有两个版本,python2和python3,这里安装的是python2.7.主要考虑python使 ...

  2. Python 类方法、实例方法、静态方法

    实例方法:类中第一个参数为self的方法. 类方法:类中第一个参数为类,约定写为cls,并被@classmethod修饰的方法. 静态方法:类中被@staticmethod修饰的方法. 类变量:定义在 ...

  3. mysql慢查询日志分析工具(python写的)

    D:\NormalSoftware>python mysql_filter_slow_log.py ./mysql1-slow.log --no-duplicates --sort-avg-qu ...

  4. Collecting Bugs (概率dp)

    Ivan is fond of collecting. Unlike other people who collect post stamps, coins or other material stu ...

  5. sqlserver删除所有表

    --/第1步**********删除所有表的外键约束*************************/ DECLARE c1 cursor for select 'alter table ['+ o ...

  6. [Delphi]解决Delphi Distiller运行报错"HKEY_CURRENT_USER\\" is of wrong kind or size

    最近终于决心将使用多年的Delphi 7升级到Delphi 2007,虽然目前Delphi最高版本已经是XE8,但对于只做VCL开发的话还是喜欢2007这个经典的版本. 安装Delphi 2007一切 ...

  7. The path "fos_user.from_email.address" cannot contain an empty value, but got null.

    The path "fos_user.from_email.address" cannot contain an empty value, but got null.. 修改 pa ...

  8. Blobstore Java API overview

    Blobstore API允许你的应用程序使用(serve)叫做Blobs的数据对象.这种数据对象比Datastore服务所允许的对象的尺寸大得多.Blobs能有效地为大文件比如视频.图片提供服务,允 ...

  9. linux删除文件夹的命令

    使用rm -rf 目录名字 命令即可 -r 就是向下递归,不管有多少级目录,一并删除-f 就是直接强行删除,不作任何提示的意思 eg 删除文件夹实例:rm -rf /var/log/httpd/acc ...

  10. Python 3 并发编程多进程之守护进程

    Python 3 并发编程多进程之守护进程 主进程创建守护进程 其一:守护进程会在主进程代码执行结束后就终止 其二:守护进程内无法再开启子进程,否则抛出异常:AssertionError: daemo ...