一:.项目结构
二、代码
1)HibernateUtil
package util;import org.hibernate.SessionFactory;import org.hibernate.boot.MetadataSources;import org.hibernate.boot.registry.StandardServiceRegistry;import org.hibernate.boot.registry.StandardServiceRegistryBuilder;public class HibernateUtil { private static SessionFactory sf; static { StandardServiceRegistry registry = new StandardServiceRegistryBuilder() .configure()//实验方法给个参数,看配置文件名能否不是hibernate.cfg.xml .build(); sf = new MetadataSources(registry) .buildMetadata() .buildSessionFactory(); } public static SessionFactory getSessionFactory(){ return sf; }}
2)配置文件hibernate.cfg.xml
oracle.jdbc.driver.OracleDriver jdbc:oracle:thin:@localhost:1521:orcl myuser 123 org.hibernate.dialect.Oracle10gDialect create true true
3.1)实体对象
package entity;public class Student { private String sno; private String sname; public String getSno() { return sno; } public void setSno(String sno) { this.sno = sno; } public String getSname() { return sname; } public void setSname(String sname) { this.sname = sname; } }
3.2)实体映射文件
4)dao方法
package dao;import java.util.List;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.Transaction;import entity.Student;import util.HibernateUtil;public class StudentDao { private SessionFactory sf; public StudentDao() { sf = HibernateUtil.getSessionFactory(); } /*添加*/ public void insert(Student stu){ Session s = sf.openSession(); Transaction ts = s.beginTransaction(); /*添加*/ s.save(stu); ts.commit(); s.close(); } /*修改*/ public void udate(Student stu){ Session s = sf.openSession(); Transaction ts = s.beginTransaction(); /*修改*/ s.update(stu); ts.commit(); s.close(); } /*删除*/ public void delete(String sno){ Session session = sf.openSession(); Transaction tx = session.beginTransaction(); Student stu = session.get(Student.class, sno); /*删除*/ session.delete(stu); tx.commit(); session.close(); } /*查询*/ public ListgetAll(){ Session s = sf.openSession(); String hql = "from Student"; /*查询*/ List list = s.createQuery(hql).list(); s.close(); return list; } }
5)test测试
package test;import dao.StudentDao;import entity.Student;public class Main { public static void main(String[] args) { StudentDao dao = new StudentDao(); /*添加*/ Student stu = new Student(); stu.setSno("22"); stu.setSname("z22"); dao.insert(stu); /*修改*/ /*Student stu = new Student(); stu.setSno("11"); stu.setSname("2222222"); dao.udate(stu);*/ /*查询*/ /* Listlist = dao.getAll(); for(Student s: list){ System.out.println(s.getSname()); }*/ /*删除*/ /*dao.delete("22");*/ }}
/*以上个人整理笔记,如果有误或者有不懂的地方,欢迎评论与指出*/