用hibernate实现增删改查
package hibernate;
import java.util.Date;
import java.util.List;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.query.Query;
public class test {
public static void main(String[] args) {
Configuration conf = new Configuration().configure();//1、读取配置文件
SessionFactory sf = conf.buildSessionFactory();// 2、创建SessionFactory
Session session = sf.openSession();// 3、打开Session
Transaction tx = null;
try{
tx = session.beginTransaction();// 4、开始一个事务
// 5、持久化操作
User user = new User();
//增加
// user.setName("123");
// user.setBirthday(new Date());;
// session.save(user);
//查询 用户名 name
// Query query = session.createQuery("from User");
// List users = query.list();
// for(int i=0;i<users.size();i++)
// {
// user =(User)users.get(i);
// System.out.println(i+"--"+user.getName());
// }
//查询两个以上属性
// Query query = session.createQuery("select u.name, u.birthday from User as u");
// List users = query.list();
// for(int i=0;i<users.size();i++)
// {
// Object obj[] =(Object[])users.get(i);
// System.out.println("用户名"+obj[0]+"的生日为:"+obj[1]);
// }
//去除重复查询
// String username;
//
// Query query = session.createQuery("select distinct u.name from User as u");
// List usernames = query.list();
// for(int i=0;i<usernames.size();i++)
// {
// username =(String)usernames.get(i);
// System.out.println(i+"--"+username);
// }
// 修改 修改的是全部 而不是一条
// Query query = session.createQuery("update User set name='Hibernate' where name='Hibernate user'");
// query.executeUpdate();
//删除
// Query query = session.createQuery("delete User u where u.name='123'");
// query.executeUpdate();
tx.commit();// 6、 提交事务
}catch(Exception e){
if (null!=tx){tx.rollback();}
e.printStackTrace();
}finally{
session.close();// 7、关闭Session
}
}
}