需要用的包

Hibernate的日志记录:

* Hibernate日志记录使用了一个slf4j:

* SLF4J,即简单日志门面(Simple Logging Facade for Java),不是具体的日志解决方案,它只服务于各种各样的日志系统。

引入log4j.properties.

创建一个数据表

create database hibernate_day01;

use hibernate_day01;

create table customer(

id int primary key auto_increment,

name varchar(20),

age int

);

创建实体类和映射

public class Customer {

private int id;

private String name;

private int age;

...

}

创建映射:

* 在实体类所在的包下创建一个与类同名.hbm.xml(但是映射文件只要是XML格式文件即可)

* 引入映射文件的约束:

* hibernate3.jar/org/hibernate/hibernate-mapping-3.0.dtd

<!DOCTYPE hibernate-mapping PUBLIC

"-//Hibernate/Hibernate Mapping DTD 3.0//EN"

"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">

<hibernate-mapping>

<!--

使用class标签完成类与表的映射

name:类的全路径.

table:表的名称

-->

<class name="cn.itcast.hibernate.demo1.Customer" table="customer">

<!--

使用id标签完成类中属性与表中的主键对应

* name :类中属性名

* column :表中的字段名

-->

<id name="id" column="id">

<!-- 主键生成策略 -->

<generator class="native"/>

</id>

<!--

使用property标签完成类中普通属性与表中的字段映射

* name :类中属性名

* column :表中的字段名

-->

<property name="name" column="name"/>

<property name="age" column="age"/>

</class>

</hibernate-mapping>

创建hibernate的核心xml配置文件

在src下新建一个hibernate.cfg.xml

* 引入约束:* hibernate3.jar/org/hibernate/hibernate-configuration-3.0.dtd

<!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.connection.driver_class">

com.mysql.jdbc.Driver

</property>

<property name="hibernate.connection.url">

jdbc:mysql:///hibernate_day01

</property>

<property name="hibernate.connection.username">root</property>

<property name="hibernate.connection.password">123</property>

<!-- Hibernate的方言: -->

<property name="hibernate.dialect">

org.hibernate.dialect.MySQLDialect

</property>

<!-- 配置Hibernate可选的属性 -->

<!-- 显示SQL -->

<property name="hibernate.show_sql">true</property>

<!-- 格式化SQL -->

<property name="hibernate.format_sql">true</property>

<!-- hbm2ddl -->

<property name="hibernate.hbm2ddl.auto">update</property>

<!-- 引入映射文件: -->

<mapping resource="cn/itcast/hibernate/demo1/Customer.hbm.xml" />

</session-factory>

</hibernate-configuration>

编写一个测试类

@Test

/**

* 向数据库中插入一条记录.

*/

public void demo1(){

// 1.加载核心配置文件:加载src下的hibernate.cfg.xml

Configuration configuration = new Configuration().configure();

// 2.创建一个SessionFactory对象.

SessionFactory sessionFactory = configuration.buildSessionFactory();

// 3.通过SessionFactory生成一个Session(Connection)对象.

Session session = sessionFactory.openSession();

// 4.开启事务.

Transaction tx = session.beginTransaction();

// 5.执行操作.

// 插入记录.

Customer customer = new Customer();

customer.setName("任童");

customer.setAge(38);

session.save(customer);

// 6.提交事务.

tx.commit();

// 7.释放资源

session.close();

sessionFactory.close();

}

查看结果

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

  1. Hibernate搭建框架(一)

    什么是hibernate? hibernate是一个orm框架,实现了对JDBC的封装.通过xml文件来实现类和表之间的映射,这样就可以使用操作对象的方式来操作数据库. 官网:http://hiber ...

  2. Eclipse搭建SSH(Struts2+Spring+Hibernate)框架教程

    | 版权声明:本文为博主原创文章,未经博主允许不得转载. 前言 确实,刚创博客,对于这个陌生的东西还是有些许淡然.这是我的第一篇博文,希望能给你们有帮助,这就是我最大的乐趣! 好了下面进入正题: SS ...

  3. Struts2+Spring+Hibernate 三大框架的合并集成

    这次来看看Struts2+Spring+Hibernate三大框架的整合应用,主要是Spring和Hibernate框架的整合,因为前边已经将Strtus2+Spring整合过了基本一样.  首先看一 ...

  4. 初学springMVC搭建框架过程及碰到的问题

    刚刚开始学spring框架,因为接了一个网站的项目,想用spring+springMVC+hibernate整合来实现它,现在写下搭建框架的过程及碰到的问题.希望给自己看到也能让大家看到不要踏坑. 一 ...

  5. Springmvc+Spring+Hibernate搭建方法

    Springmvc+Spring+Hibernate搭建方法及example 前面两篇文章,分别介绍了Springmvc和Spring的搭建方法,本文再搭建hibernate,并建立SSH最基本的代码 ...

  6. Struts,spring,hibernate三大框架的面试

    Struts,spring,hibernate三大框架的面试 1.Hibernate工作原理及为什么要用? 原理: 1.读取并解析配置文件 2.读取并解析映射信息,创建SessionFactory 3 ...

  7. Springmvc+Spring+Hibernate搭建方法及实例

    Springmvc+Spring+Hibernate搭建方法及实例  

  8. 从零开始搭建框架SSM+Redis+Mysql(二)之MAVEN项目搭建

    从零开始搭建框架SSM+Redis+Mysql(二)之MAVEN项目搭建 废话不说,直接撸步骤!!! 1.创建主项目:ncc-parent 选择maven创建项目,注意在创建项目中,packing选择 ...

  9. 从零开始搭建框架SSM+Redis+Mysql(一)之摘要

    从零开始搭建框架SSM+Redis+Mysql(一)之摘要 本文章为本人实际的操作后的回忆笔记,如果有步骤错漏,希望来信307793969@qq.com或者评论指出. 本文章只体现过程,仅体现操作流程 ...

随机推荐

  1. 【Nginx】实现负载均衡的几种方式

    要理解负载均衡,必须先搞清楚正向代理和反向代理. 注: 正向代理,代理的是用户. 反向代理,代理的是服务器 什么是负载均衡 当一台服务器的单位时间内的访问量越大时,服务器压力就越大,大到超过自身承受能 ...

  2. CSS3 04. 伸缩布局、设置主轴,侧轴方向、主/侧轴对齐方式、 伸缩比例、元素换行、换行控制、覆盖父元素的align-items;控制子元素顺序、web字体、突变字体

    CSS3 在布局方面做了非常大的改进,对块级元素的布局排列变得十分灵活,适应性非常强,其强大的伸缩性,在响应式开发中可以发挥极大的作用.(兼容性不好) 必要元素: 指定一个盒子为伸缩盒子 displa ...

  3. MYSQL之B+TREE索引原理

    1.什么是索引? 索引:加速查询的数据结构. 2.索引常见数据结构 顺序查找: 最基本的查询算法-复杂度O(n),大数据量此算法效率糟糕. 二叉树查找:(binary tree search): O( ...

  4. 实验吧CTF练习题---WEB---头有点大解析

    实验吧web之头有点大   地址:http://www.shiyanbar.com/ctf/29 flag值:HTTpH34der     解题步骤: 1.进入解题界面,看提示 2.说提示很多,再提示 ...

  5. [币严区块链]BitcoinCash - BCH钱包地址生成与扫块充值监控(JAVA版)

    本文的方案无需自建节点,因为BCH当前区块数据大小已经达到200G以上,BTC区块数据也已超过300G,若每个币都自建节点,对云服务器的消耗会非常大. 认识BitcoinCash(BCH) Bitco ...

  6. MongoDB的入门使用以及遇到的坑

    一:MonoDB的简单介绍 MongoDB是一个介于关系型数据库与非关系型数据库中间的数据库,是使用C++进行编写的,他的优点是在支持的查询格式特别的强大,可以进行存储比较复杂的数据类型,支持建立索引 ...

  7. 使用vitamio长时间播放崩溃的另类处理

    最近公司一个项目在公交站旁边弄一个 广告牌,上面是广告视频,下面是广告图片,都是无限轮播的.要求从早上6点到晚上11点不间断播放.剩余时间为关机状态. 图片部分还好说,就是viewpager弄一个无限 ...

  8. 解决安装flask库不成功

    Python中使用python -m pip install --upgrade pip升级pip时老是不成功   场景 在使用python -m pip install --upgrade pip进 ...

  9. All Of ACM

    数据结构和算法专栏,我会什么写什么  = = 不定时更新 一.数据结构 树状数组详解 线段树详解 二.算法 KMP算法 三.板子 我的代码模板 大整数模板 四.题解报告 几道STL题目(FJUT - ...

  10. Elastic Stack 笔记(六)Elasticsearch5.6 搜索详解

    博客地址:http://www.moonxy.com 一.前言 Elasticsearch 主要包含索引过程和搜索过程. 索引过程:一条文档被索引到 Elasticsearch 之后,默认情况下 ES ...