eclipse配置Hibernate的环境和对数据库简单的增删改查

今天就讲一下hibernate简单的增删改查

先配置hibernate的环境
注:在写之前需要有jboss的插件
1.在pom.xml中先引入hibernate的依赖和mysql的依赖


  
   org.hibernate
   hibernate-core
   5.3.10.Final
  
  
 
 
     mysql
     mysql-connector-java
     5.1.46
 

这是我的项目结构
eclipse配置Hibernate的环境和对数据库简单的增删改查_第1张图片

2.在实体类中新建你要操作的数据库表所对应的实体类,然后生成所对应的映射文件
生成映射文件步骤:1.右键实体类所在的包名,点击new,然后再点击下面的other
搜索hib
eclipse配置Hibernate的环境和对数据库简单的增删改查_第2张图片
点击第四个hbm.xml,一直next,然后finish,生成后是这样的
eclipse配置Hibernate的环境和对数据库简单的增删改查_第3张图片
注:实体类中有的字段,在映射文件中都要与之对应
3.生成hibernate的核心配置文件
在resources文件夹右键----new–找到other–搜索hibernate–cfg.xml
eclipse配置Hibernate的环境和对数据库简单的增删改查_第4张图片
一直到这个页面
eclipse配置Hibernate的环境和对数据库简单的增删改查_第5张图片
完成后是这样的 就finish完成
eclipse配置Hibernate的环境和对数据库简单的增删改查_第6张图片
生成后是这样
eclipse配置Hibernate的环境和对数据库简单的增删改查_第7张图片
环境配置完后,就开始写test中的增删改查,我写的是测试的,所以把pom.xml配置文件中改了
eclipse配置Hibernate的环境和对数据库简单的增删改查_第8张图片
测试类中代码

package com.ywy.test;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;

import com.ywy.entity.Student;
public class TestHib {	
private Configuration configuration;
  private SessionFactory factory;
  private Session session;
  private Transaction transaction;
  
  //在测试之前执行的方法
  @Before
  public void test() {
   //获取hibernate的配置文件信息
   configuration=new Configuration().configure();
   //通过配置文件获取到session工厂
   factory=configuration.buildSessionFactory();
   //通过工厂打开session对象
   session=factory.openSession();
   //如果有新增,就需要提交事务
   transaction=session.beginTransaction();
  }
  
  
  
  @Test
  public void addAll() {
   //添加
   Student student=new Student("哈哈哈哈", "男", 20, new Date());
   //添加
   session.save(student);
  }
  @Test
  public void deteleAll() {
   //删除
   //先查询出你要删除的对象,然后再把对象删除 5对应你的id
   Student student=session.get(Student.class, 5);
   session.delete(student);
  }
  @Test
  public void findAll() {
   //查询全部
   List list=session.createQuery("from Student").list();
   for (Student student : list) {
    System.out.println(student.getName());
   }
  }
  @Test
  public void findId() {
   //查询单个
   Student student=session.get(Student.class, 1);
   System.out.println(student);
  }
  @Test
  public void updateAll() {
   //修改
   Student student=session.get(Student.class, 1);
   student.setName("嘻嘻嘻2222");
   //可以加可以不加,他会有一个持久态,会和数据库中的数据同步更新,与数据库不一致时就同步更新
  // session.update(student);
  }
 @After
  public void after() {
   transaction.commit();//提交事务
   session.close();//关闭session
  }
}

你可能感兴趣的:(Hibernate)