Hibernate基础增删改查语法

时间:2023-03-08 17:34:25

1、创建好Hibernate项目,创建好实体类和测试类,如果不会创建Hibernate项目的同学,点此处:http://www.cnblogs.com/zhaojinyan/p/9336174.html

2、数据库增删改查的操作都在测试类中写的。代码如下:

 添加数据

import java.util.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; public class Test { public static void test() {
//创建一个 SessionFactory 对象
SessionFactory sessionFactory = null; //创建Configuration对象:对应hibernate的基本配置信息和对象关系映射信息
Configuration configuration = new Configuration().configure(); //创建一个 ServiceRegistry 对象: hibernate 4.x 新添加的对象
//hibernate 的任何配置和服务都需要在该对象中注册后才能有效.
ServiceRegistry serviceRegistry =
new ServiceRegistryBuilder().applySettings(configuration.getProperties())
.buildServiceRegistry(); sessionFactory = configuration.buildSessionFactory(serviceRegistry); // 创建一个 Session 对象
Session session = sessionFactory.openSession(); // 开启事务
Transaction transaction = session.beginTransaction(); //执行保存和加载操作
//增数据 News news1 = new News("Java1", "lisi", new Date(new java.util.Date().getTime()));
News news2 = new News("Java2", "wangwu", new Date(new java.util.Date().getTime()));
News news3 = new News("Java3", "zhaoliu", new Date(new java.util.Date().getTime()));
News news4 = new News("Java4", "huhu", new Date(new java.util.Date().getTime()));
News news5 = new News("Java5", "dudu", new Date(new java.util.Date().getTime()));
//执行添加用save方法
session.save(news1);
session.save(news2);
session.save(news3);
session.save(news4);
session.save(news5); //5. 提交事务
transaction.commit(); //6. 关闭 Session
session.close(); //7. 关闭 SessionFactory 对象
sessionFactory.close();
} public static void main(String[] args) {
test();
} }

 执行过程:

Hibernate基础增删改查语法

 

 测试结果:

  Hibernate基础增删改查语法

  删除数据 

//删除一条数据(ID=5)
//先获取id=5的一个对象
News p =(News) session.get(News.class, 5);
//执行删除用delete方法
session.delete(p);

  执行过程:

  Hibernate基础增删改查语法

  测试结果(删除了id=5的一条数据):

  Hibernate基础增删改查语法

  修改数据:

 //修改数据
//先获取id=4的一个对象
News p=(News)session.get(News.class,4); //修改数据用到的是实体类中的set成员方法
p.setTitle("c#");//Title字段
p.setContent("赵sir");//content字段
p.setDate(new Date(new java.util.Date().getTime()));//时间字段

  执行过程:

  Hibernate基础增删改查语法

  执行结果(id=4的数据已经被修改成我们想要的数据):

  Hibernate基础增删改查语法

  查询数据:

  加入了条件:

  //查询数据
//得到Query对象,并写入hql语句
Query query = session.createQuery("from News where title='c#'");
//使用Query对象的list方法得到数据集合
List<News> list = query.list();
//遍历集合获取数据
for (News news : list) {
System.out.println(news);
}

  执行结果:

  Hibernate基础增删改查语法

在这里简单的介绍了,Hibernate最简单的操作语法,更深的知识在其他的篇章再写。