需要用的包

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. 弹幕制作canvas方法,文字直播和聊天

    今天要做体育文字直播的项目,类似这样: 文字不断循环显示,我这里找到了一个网上的写法,分析后并贴在这里,并且封装成了jquery barrager方法,很是方便,分析了下原理,是刷新canvas 画布 ...

  2. 浅谈contentType = false

    转自https://segmentfault.com/a/1190000007207128 在刚接触 JQuery 中的 ajax 时,对其 contentType 并没有很在意,只是知晓它是代表发送 ...

  3. 3、pytest中文文档--编写断言

    目录 编写断言 使用assert编写断言 编写触发期望异常的断言 特殊数据结构比较时的优化 为失败断言添加自定义的说明 关于断言自省的细节 复写缓存文件 去使能断言自省 编写断言 使用assert编写 ...

  4. mariadb报:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111 "Connection refused")

    我这边移除了mysql.sock文件后,重启服务就成功了. 还有一种情况,就是加入galera后,可能是server.cnf配置信息出了问题导致的,修改后,重新运行galera即可,数据库就可以启动成 ...

  5. Mysql的两种存储引擎以及区别

    一.Mysql的两种存储引擎 1.MyISAM: ①不支持事务,但是整个操作是原子性的(事务具备四种特性:原子性.一致性.隔离性.持久性) ②不支持外键,支持表锁,每次所住的是整张表     MyIS ...

  6. VG有空间,创建逻辑卷

    1.查看VG空间 [root@CNSZ22PL2787 ~]# vgs VG #PV #LV #SN Attr VSize VFree VolGroup00 1 7 0 wz--n- 1.63t 1. ...

  7. ACM团队周赛题解(1)

    这次周赛题目拉了CF315和CF349两套题. 因为我代码模板较长,便只放出关键代码部分 #define ll long long #define MMT(s,a) memset(s, a, size ...

  8. 松软科技课堂:索引器计时器Timer

    在.NET中有三种计时器:1.System.Windows.Forms命名空间下的Timer控件,它直接继承自Componet.Timer控件只有绑定了Tick事件和设置Enabled=True后才会 ...

  9. 关于CPU核心,线程,进程,并发,并行,及java线程之间的关系

    前言:作为一个转行java的小白,一直搞不清楚java中的多线程.于是来梳理一下关于CPU核心,线程,进程,并发,并行,及java线程之间的关系, 1.CPU角度来看: 我们以Intel的Core i ...

  10. python+selenium一:对浏览器的常规操作

    # 1.打开Firefox浏览器 from selenium import webdriverdriver = webdriver.Firefox()driver.get("https:// ...