Hibernate是一个开源的对象关系映射框架,它对JDBC进行了轻量级的封装,使得程序员不用再面对繁琐的面向过程的数据库操作,而是升级到面向对象的问题上来,这样不仅可以提高效率还可以避免应用JDBC编程时容易产生的错误。
其他的相关配置文件可以利用反向生成,这个我们后面再讲。
这里提供简单的增删改查的方法的代码:
import java.util.List;
import javax.persistence.Entity;
import org.hibernate.Hibernate;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
public class HTest {
public Configuration cfg;
public SessionFactory sessionFactory;
public Session session;
public static void main(String[] args){
HTest ht = new HTest();
ht.getCurrentSession();
ht.saveUser();
System.out.println("结果集:");
ht.queryUser();
ht.updateUser();
System.out.println("结果集:");
ht.queryUser();
ht.deleteUser();
System.out.println("结果集:");
ht.queryUser();
ht.closeSession();
}
//获取session
public void getCurrentSession(){
cfg = new Configuration();
sessionFactory= cfg.configure().buildSessionFactory();
session = sessionFactory.openSession();
}
//关闭session
public void closeSession(){
if(session!=null)
session.close();
}
//插入一条信息
public void saveUser(){
Transaction t1 = session.beginTransaction();
Users user = new Users();
user.setUsername("123");
user.setPassword("123456");
session.save(user);
t1.commit();
}
//修改一条信息
public void updateUser(){
Transaction t2 = session.beginTransaction();
Users user = (Users) session.get(Users.class, 2);
user.setPassword("123");
t2.commit();
}
//查询信息
public void queryUser(){
Query query = session.createSQLQuery("from Users");
List list = query.list();
for(int i = 0;i<list.size();i++){
Users users = (Users) list.get(i);
System.out.println(users.getUsername());
System.out.println(users.getPassword());
}
}
//删除信息
public void deleteUser(){
Transaction t3 = session.beginTransaction();
Users user = (Users) session.get(Users.class, 1);
session.delete(user);
t3.commit();
}
}
最后说一下我对ORM的理解,ORM就是将数据库映射成一个个java文件