Hibernate环境搭建以及HelloWorld

Hibernate是 Java 领域中使用非常广泛的持久化框架。下面使用eclipse搭建并测试一个HelloWorld程序。
一、安装Hibernate插件
为Eclipse安装Hibernate插件使得在后面开发变得很方便,安装插件可以在线安装也可以使用离线安装的方式,因为在线安装的方式比较慢很费时间,所以在这里使用离线安装的方式。
1、从Hibernate官方上下载对应的离线文件
(http://hibernate.org/orm/)
这里写图片描述
根据eclipse的版本以及jdk的版本选择下载离线文件 (eclipse4.3+jdk7)
这里写图片描述
2、安装离线文件
选择下载完成的离线文件即可
(这里写图片描述
安装完成之后重启eclipse即可。
3、验证Hibernate插件是否安装成功
在新建文件下如果能查找到Hibernate相应的文件说明安装成功。
(这里写图片描述
二、Hibernate工程
1、创建一个java工程
导入Hibernate所必须的jar包,jar包在\hibernate-release-4.2.21.Final\lib\required目录下。
同时还需要导入jdbc驱动包,这里使用的是sqlserver,所以需要导入sqlserver的驱动包。
创建Hibernate的配置文件,使用Hibernate插件可以生成。hibernate.cfg.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
        "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
        <!-- 数据库的设置 -->
        <property name="hibernate.connection.driver_class">com.microsoft.sqlserver.jdbc.SQLServerDriver</property>
        <property name="hibernate.connection.url">jdbc:sqlserver://192.168.54.31:1433;DatabaseName=DBTEST</property>
        <property name="hibernate.connection.username">sadb</property>
        <property name="hibernate.connection.password">sadb@163</property>

        <!-- Hibernate的基本设置 -->
        <!-- 设置数据库方言 -->
        <property name="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</property>
        <!-- 在控制台打印sql -->
        <property name="show_sql">true</property>
        <!-- 是否格式化sql -->
        <property name="format_sql">true</property>

        <!-- 自动生成表的策略 -->
        <property name="hbm2ddl.auto">update</property>

        <!--指定映射文件为“News.hbm.xml”--> 
        <mapping resource="com/zjp/hibernate/News.hbm.xml"/>
    </session-factory>
</hibernate-configuration>

2、编写一个持久化对象
也就是一个JavaBean,并提供相应的get、set方法。

public class News {

    private Integer id;
    private String title;
    private String author;
    private Date date;

使用Hibernate插件生成对应的对象-关系映射文件News.hbm.xml

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated 2016-11-4 12:29:40 by Hibernate Tools 3.4.0.CR1 -->
<hibernate-mapping>
    <class name="com.zjp.hibernate.News" table="NEWS">
        <id name="id" type="java.lang.Integer">
            <column name="ID" />
            <!-- 指定主键的生成方式,native使用数据库本地方式 -->
            <generator class="native" />
        </id>
        <property name="title" type="java.lang.String">
            <column name="TITLE" />
        </property>
        <property name="author" type="java.lang.String">
            <column name="AUTHOR" />
        </property>
        <property name="date" type="java.util.Date">
            <column name="DATE" />
        </property>
    </class>
</hibernate-mapping>

从这里就看出来插件对于生成该文件是非常方便。
3、测试代码

package com.zjp.hibernate;

import java.sql.Date;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
import org.hibernate.service.ServiceRegistryBuilder;
import org.junit.Test;

public class HibernateTest {
    @Test
    public void test() {
        // 1 创建一个sessionFactory对象
        Configuration configuration = new Configuration().configure();
        // 注册
        ServiceRegistry registry = new ServiceRegistryBuilder().applySettings(
                configuration.getProperties()).buildServiceRegistry();
        SessionFactory sessionFactory = configuration.buildSessionFactory(registry);

        // 2 创建一个session对象
        Session session = sessionFactory.openSession();
        // 3 开启事务
        Transaction transaction = session.beginTransaction();

        // 4 执行保存的操作
        News news = new News("java", "zzzz", new Date(new java.util.Date().getTime()));
        session.save(news);
        // 5 提交事务
        transaction.commit();
        // 6 关闭session
        session.close();
        sessionFactory.close();
    }

}

测试之后在控制台打印了执行的sql语句以及在数据库中多了一条数据。
(这里写图片描述)

示例代码:Hibernate工程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值