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. selenium驱动Firefox跳转页慢慢慢的问题(待验证)

    转载至http://www.cnblogs.com/yicaifeitian/p/5198871.html 为了解决这个问题,我是查了很多资料,解决方案是百度出来的.抱歉,我忘记出处在哪了,代码如下: ...

  2. java 中 集合类相关问题

    1,Java中Collection和Collections的差别 java.util.Collection 是一个集合接口.它提供了对集合对象进行基本操作的通用接口方法. Collection接口在J ...

  3. Manager模块 队列 管道 进程池

    Manager模块 作用:  多进程共享变量. Manager的字典类型: 如果value是简单类型,比如int,可以直接赋值给共享变量,并可以后续直接修改 如果value是复杂类型 ,比如list, ...

  4. [08山东省选]2298 石子合并 即POJ 1738 An old Stone Game

    2298 石子合并 2008年省队选拔赛山东  时间限制: 1 s  空间限制: 256000 KB  题目等级 : 黄金 Gold 题解  查看运行结果     题目描述 Description 在 ...

  5. 记录-配置tomcat不加项目名即可访问项目

    环境:tomcat 在eclipse中  打开Servers  下的server.xml文件,在最下方你会看到类似 <Context docBase="/vankeplatform&q ...

  6. 详解Maven项目利用java service wrapper将Java程序生成Windows服务

    在项目的开发中,有时候需要将Java应用程序打包成Windows服务,我们就直接可以通过windows的服务来启动和关闭java程序了. 本博文将通过有两种方法实现该功能,手动创建法和Maven自动打 ...

  7. windowsphone8.1学习笔记之位图编程

    说位图,先把image控件简单过下,Image的Source设置 <Image Name="img" Source="可以是网络图片的Uri.应用文件的Uri或者安 ...

  8. rate limiter - system design

    1 问题 Whenever you expose a web service / api endpoint, you need to implement a rate limiter to preve ...

  9. ASP向上取整

    <%Function Ceil(value)    Dim return    return = int(value)    Cei2=value-return    if Cei2>0 ...

  10. zend 和 esftp插件开发大型PHP项目,ZEND最常用快捷键

    先说一下如何安装zend的esftp插件,下载插件esftp-1.1.1.zip,下载地址http://sourceforge.net/projects/esftp/ 或者 http://yun.ba ...