1、 下载资源:www.hibernate.org

2、 资源介绍hibernate-release-4.3.10.Final

  a) Documentation  相关文档

  b) Lib 相关jar包

  c) Project相关资源文件,模板文件,源码等

3、 搭建hibernate环境:

  a) 新建一个java项目

  b) 导入相关jar包

    antlr-2.7.7.jar

    dom4j-1.6.1.jar

    hibernate-commons-annotations-4.0.5.Final.jar

    hibernate-core-4.3.10.Final.jar

    hibernate-jpa-2.1-api-1.0.0.Final.jar

    jandex-1.1.0.Final.jar

    javassist-3.18.1-GA.jar

    jboss-logging-3.1.3.GA.jar

    jboss-logging-annotations-1.2.0.Beta1.jar

    jboss-transaction-api_1.2_spec-1.0.0.Final.jar

    mysql-connector-java-5.1.20-bin.jar

  c) 编写配置文件hibernate.cfg.xml文件

    在下载的资源中找到 hibernate-release-4.3.10.Final\project\etc\hibernate.cfg.xml 放入到项目中src下:

    修改hibernate.cfg.xml文件如下:  

  <!--以MySQL为例:-->
<hibernate-configuration>
<session-factory>
<!-- 配置数据库连接信息 -->
<!--数据库驱动-->
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<!--数据库地址-->
<property name="connection.url">jdbc:mysql://localhost:3306/hibernate4</property>
<!--数据库用户名-->
<property name="connection.username">root</property>
<!--数据库密码-->
<property name="connection.password">root</property>
<!-- 数据库方言 -->
<property name="dialect">org.hibernate.dialect.MySQL5Dialect</property>
</session-factory>
</hibernate-configuration>
<!-- 这些配置都可以在hibernate.properties文件中找到 -->

  d) 创建数据库表,以及对应的pojo对象

    Pojo对象:

 public class User {
private int id;
private String name;
private String pwd;
//省略setter、getter
}

User表:user:

id

name

pwd

 

  e) 编辑*.hbm.xml文件

    文件名一般为pojo类的名称User.hbm.xml,放在pojo类所在的包下,头文件可以在project下查找,也可拷贝。然后将*.hbm.xml配置文件加入到hibernate.cfg.xml中.

 <hibernate-mapping>
<class name="cn.siggy.pojo.User" table="user">
<id name="id">
<!-- 主键生成策略 -->
<generator class="native"></generator>
</id>
<!-- 实体类的属性 -->
<property name="name"/>
<property name="pwd"/>
</class>
</hibernate-mapping>

  f) 测试:将*.hbm.xml配置文件加入到hibernate.cfg.xml中。在hibernate.cfg.xml中点击Session Factory,在Mappings中add即可。   

 public static void main(String[] args) {
//1.新建Configuration对象
Configuration cfg = new Configuration().configure();
//2.通过Configuration创建SessionFactory对象
//在hibernate3.x中是这种写法
//SessionFactory sf = cfg.buildSessionFactory();
//hibernate4.3之前~hibernate4.0
// ServiceRegistry sr = new ServiceRegistryBuilder()
// .applySettings(cfg.getProperties())
// .buildServiceRegistry();
//hibernate4.3
ServiceRegistry registry = new StandardServiceRegistryBuilder()
.applySettings(cfg.getProperties())
.build();
SessionFactory sf = cfg.buildSessionFactory(registry);
//3.通过SessionFactory得到Session
Session session = sf.openSession();
//4.通过session对象 得到Transaction对象
//开启事务
Transaction tx = session.beginTransaction();
//5.保存数据
User user = new User();
user.setName("张三疯");
user.setPwd("1111");
session.save(user);
//6.提交事务
tx.commit();
//7.关闭session
session.close();
}

Hibernate第一个程序的更多相关文章

  1. Hibernate第一个程序(最基础的增删改查) --Hibernate

    本例实现Hibernate的第一个程序,Hibernate的优点我想大家都很清楚,在这里不做过多赘述.总之,使用Hibernate对数据库操作,也就是来操作实体对象的! 项目目录: 一.第一步要做的就 ...

  2. 用my eclipse 新建hibernate 第一个程序

    Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库. 今天就来开始建我们的第一个hibernat ...

  3. Hibernate5笔记1--Hibernate简介和第一个程序

    Hibernate简介: Hibernate是一个开放源代码的ORM(对象关系映射)框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库. Hib ...

  4. Hibernate 入门的第一个程序

    一. Hibernate介绍     Hibernate是基于对象/关系映射(ORM,Object/Relational Mapping)的一个解决方案.ORM方案的思想是将对象模型表示的对象映射到关 ...

  5. Android开发-之第一个程序:HelloWorld!

    小编觉得不管学习什么编程的时候,第一个程序都是要求打印输出一个"HelloWorld!",那就从最简单的HelloWorld开始吧!哈哈~~~~ 一.创建一个Android工程 1 ...

  6. 在运行Hibernate Hello World程序的时候,抛如下错误: view plain Exception in thread "main" org.hibernate.exception.LockAcquisitionException 解决方法

    在运行Hibernate Hello World程序的时候,抛如下错误: Exception in thread "main" org.hibernate.exception.Lo ...

  7. [Fluent NHibernate]第一个程序

    目录 写在前面 Fluent Nhibernate简介 基本配置 总结 写在前面 在耗时两月,NHibernate系列出炉这篇文章中,很多园友说了Fluent Nhibernate的东东,也激起我的兴 ...

  8. rails再体验(第一个程序)

    掌握redmine plugin开发的目标在2016年未实现,2017年继续. 选择<Ruby on Rails Tutorial>教程,windows安装railsinstaller,该 ...

  9. OpenGL学习笔记1——第一个程序

    学习的参考书基本是按照GL编程指南,如果有消息机制概念,对于GLUT的理解是很自然的.下面就按照自己写的第一个程序详细解释一下GL,还是比较容易上手的. 程序实现的功能是,根据当前随即种子摇出来的结果 ...

随机推荐

  1. python--函数--5

    原创博文,转载请标明出处--周学伟http://www.cnblogs.com/zxouxuewei/ 一.什么是函数 我们知道圆的面积计算公式为: S = πr² 当我们知道半径r的值时,就可以根据 ...

  2. Prim求解最小生成树

    #include "ljjz.h" typedef struct edgedata /*用于保存最小生成树的边类型定义*/ { int beg,en; /*beg,en是边顶点序号 ...

  3. android中的DatePicker与TimePicker

    1.布局文件 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns ...

  4. PHP学习——数据类型

    PHP的数据是存在类型的概念的,弱类型指的是变量可以存储任何类型!一共8种,分别是:整型.浮点型.布尔型.字符串(标量类型) 数组.对象(符合类型) null.资源(特殊类型) 分成三大类: 标量类型 ...

  5. 记录Cat类的个体数目

    B.记录Cat类的个体数目 Time Limit: 1000 MS Memory Limit: 32768 K Total Submit: 22 (17 users) Total Accepted: ...

  6. Python中strip()函数

    在python API中这样解释strip()函数:

  7. 木匠ing[索引]

    古人有云,一个不会写代码的木匠不会是个好厨子. 为了响应这个号召,开始我的木工之路. 首先介绍一个网站,www.zuojiaju.com 木工爱好者 ,里面有大量的关于木匠的帖子,感谢一下. 以前只是 ...

  8. linux服务之upstart与systemd

    http://blog.fens.me/linux-upstart/ rpm -ql initscripts|more [root@84-monitor init]# rpm -qf /etc/ini ...

  9. android模拟器不能用键盘

    android模拟器不能用键盘?咋整啊?

  10. String 深浅拷贝的测试---有待继续测试

    public class TestString { void test1() { // TODO Auto-generated method stub String str = new String( ...