Hibernate基础增删改查语法
1、创建好Hibernate项目,创建好实体类和测试类,如果不会创建Hibernate项目的同学,点此处:http://www.cnblogs.com/zhaojinyan/p/9336174.html
2、数据库增删改查的操作都在测试类中写的。代码如下:
添加数据
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
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(); } }
执行过程:
测试结果:
删除数据
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
//删除一条数据(ID=5) //先获取id=5的一个对象 News p =(News) session.get(News.class, 5); //执行删除用delete方法 session.delete(p);
执行过程:
测试结果(删除了id=5的一条数据):
修改数据:
//修改数据 //先获取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()));//时间字段
执行过程:
执行结果(id=4的数据已经被修改成我们想要的数据):
查询数据:
加入了条件:
//查询数据 //得到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最简单的操作语法,更深的知识在其他的篇章再写。