在intellij idea中使用Hibernate详细

1.在intellij idea中添加Hibernate support

在file->setting->plugins搜索Hibernate
这里写图片描述
选中Hibernate support和Persistence frameworks Support点击确定待添加完成后再添加JUnit,待添加完成重新启动intellij idea

2.创建一个Hibernate项目

和创建普通的java项目一样file->new->project
这里写图片描述
选择java,选择Hibernate选项,勾选上create default hibernate configuration and main class,下面的Liberaries选择Download点击next命名为HibernateDamo。项目创建完成。

3.在mysql数据库中创建数据库hibernate并创建一个学生表(students)

这里我使用Navicat Premium
打开软件创键连接
这里写图片描述
然后新建数据库(hibernate)
这里写图片描述
字符集选择utf-8,点击确定
这里写图片描述
在数据库里新建表(students)并添加属性
这里写图片描述
这里写图片描述
到此,数据库就准备完毕了

4.使用intellij idea连接数据库

打开intellij idea,找到view->Tool Windows->Database
按下图操作
这里写图片描述
这里写图片描述
填写完成后点击侧边的MySql选项添加驱动
最后点击Test connection
这里写图片描述
看到successful后点击OK
可以看到刚刚建立的数据库和表
这里写图片描述

5.创建持久化类

首先在src包下新建一个包叫table
然后跟下图操作
这里写图片描述
这里写图片描述
完成后在table下会生成两个文件实体类和配置文件
这里写图片描述
现在到lib包下添加jdbc for mysql驱动(需要自己提前下载)
然后右击复制好的文件选择add as Library 弹出对话框点击确定
然后打开hibernate.cig.xml(在src包中)添加用户名和密码
这里写图片描述

6.使用Junit测试

在第一步的时候我们已经添加了JUnit
首先在src包下面新建test包 在包中新建一个StudentsTest类
内容如下

package test;

import Dao.StudentsEntity;
import org.hibernate.*;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;

import java.sql.Date;

/**
 * 这里是测试类
 * Created by mycomputer on 2017/4/15.
 */
public class StudentsTest {

    private SessionFactory sessionFactory;
    private Session session;
    private Transaction transaction;




    @Before
    public void init(){
        //创建配置对象
        Configuration config = new Configuration().configure();
        //创建服务注册对象
        //  ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(config.getProperties()).build();(使用这种方法会报错,unkonw Entity 。。。。)
        ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().configure().build();
        //创建会话工厂对象

        sessionFactory = config.buildSessionFactory(serviceRegistry);
        //创建会话对象
        session  = sessionFactory.openSession();
        //开启事务
        transaction = session.beginTransaction();
    }


    @Test
    public void testSaveStudents(){
        StudentsEntity s = new StudentsEntity();
        s.setSid(2);
        s.setSname("张三丰");
        s.setGender("男");
        s.setBirthday( new Date(1));
        s.setAddress("大昌南路18号");
        session.save(s);//保存对象进入数据库
    }

    @After
    public void destory(){
        //提交事务
        transaction.commit();
        //关闭session
        session.close();
        //关闭sessionFactory
        sessionFactory.close();
    }
}

然后运行这个类
这里写图片描述
测试成功!!!完结散花

  • 6
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值