hibernate对数据的增删改查

来源:互联网 发布:淄博网络推广哪家好 编辑:程序博客网 时间:2024/06/04 06:21

  1.增加数据

   1.1 利用hibernate以及封装好了得hibernateSessionFactory对象

    package com.ldm.hiberinate;

import java.util.Date;

import org.hibernate.Session;
import org.hibernate.Transaction;

import com.ldm.pojo.Person;

public class TestAdd {
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  
  Session session = HibernateSessionFactory.getSession();
  // 2.开启事物
  Transaction ta = session.beginTransaction();
  
  Person p = new Person();
  p.setBirthday(new Date());
  p.setGrade(4);
  p.setName("张山aafd");
  p.setPassword("sadfkjldf");

  
  session.save(p);
  ta.commit();
  session.close();
 }
}
  1.2自己写相关的hibernateSessionFactory对象

package com.ldm.hiberinate;

import java.util.Date;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;

import com.ldm.pojo.Person;

public class TestAdd2 {

 
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  
  // 1.1创建 Configuration对象,准备读取hibernate配置信息
  Configuration configuration = new Configuration();
  // 1.2传入hibernate配置文件的位置
  configuration.configure("/hibernate.cfg.xml");
  // 1.3获取hibernate核心sessionFactory
  SessionFactory sessionFactory = configuration.buildSessionFactory();
  // 1.4获取session
  Session session = sessionFactory.openSession();
  // 2.开启事物
  Transaction ta = session.beginTransaction();
  
  Person p = new Person();
  p.setBirthday(new Date());
  p.setGrade(4);
  p.setName("李四");
  p.setPassword("sadfkjldf");
  
  session.save(p);
  ta.commit();
  session.close();
 }

}
  2.删除数据

package com.ldm.hiberinate;

import java.util.Date;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;

import com.ldm.pojo.Person;

public class TestDelete {
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  
  // 1.1创建 Configuration对象,准备读取hibernate配置信息
  Configuration configuration = new Configuration();
  // 1.2传入hibernate配置文件的位置
  configuration.configure("/hibernate.cfg.xml");
  // 1.3获取hibernate核心sessionFactory
  SessionFactory sessionFactory = configuration.buildSessionFactory();
  // 1.4获取session
  Session session = sessionFactory.openSession();

  // 2.开启事物
  Transaction ta = session.beginTransaction();
  
  // get()方法
  Person p = (Person) session.get(Person.class,
    "402883e531834c7e0131834c7fbf0001");
  // load()方法
  // Person p = (Person) session.load(Person.class,
  // "402883e531834c7e0131834c7fbf0001");

  
  session.delete(p);
  ta.commit();
  session.close();
 }

}
  3.修改数据

package com.ldm.hiberinate;

import java.util.Date;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;

import com.ldm.pojo.Person;

public class TestUpdate {

 
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  
  // 1.1创建 Configuration对象,准备读取hibernate配置信息
  Configuration configuration = new Configuration();
  // 1.2传入hibernate配置文件的位置
  configuration.configure("/hibernate.cfg.xml");
  // 1.3获取hibernate核心sessionFactory
  SessionFactory sessionFactory = configuration.buildSessionFactory();
  // 1.4获取session
  Session session = sessionFactory.openSession();

  // 2.开启事物
  Transaction ta = session.beginTransaction();

  
  Person p = (Person) session.get(Person.class,
    "d4db4417-ec1b-415e-8674-76edf1b75653");
  p.setName("海xiao黄");
  session.merge(p);
  // session.update(p)
  ta.commit();
  session.close();
 }

}
  4.查询数据

package com.ldm.hiberinate;

import java.util.Date;
import java.util.List;

import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;

import com.ldm.pojo.Person;

public class TestQuery {

 
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  
  // 1.1创建 Configuration对象,准备读取hibernate配置信息
  Configuration configuration = new Configuration();
  // 1.2传入hibernate配置文件的位置
  configuration.configure("/hibernate.cfg.xml");
  // 1.3获取hibernate核心sessionFactory
  SessionFactory sessionFactory = configuration.buildSessionFactory();
  // 1.4获取session
  Session session = sessionFactory.openSession();

  // 2.开启事物
  Transaction ta = session.beginTransaction();

  
  Query query = session.createQuery("from Person");
  List<Person> list = query.list();

  for (Person p : list) {
   System.out.println("名字 :" + p.getName() + "  年纪:" + p.getGrade()
     + "  生日:" + p.getBirthday() + "  密码:" + p.getPassword()
     + "\n");
  }
  ta.commit();
  session.close();
 }

}