学习Hibernate中,不得不感叹其功能的强大,将数据库控制更加清晰化,明朗化。
整理下今天所学,主要是用Session来操作数据库进行增删改查:
具体步骤如下:用HibernateUtil.getSessionFactory().openSession;打开一个session,在用session里面的方法进行数据库控制。
Session方法列举:
1. Session session=HibernateUtil.getSessionFactory().openSession;
Session.beginTransaction(); session.save(obj); session.getTransaction().commit(); session.close(); 生成Sql语句insert插入语句。在hibernate.cfg.xml中设置session是否自动提交true为是false为否
<property name="connection.autocommit">false</property>
如果设置为TRUE的话Session.beginTransaction();session.getTransaction().commit();可省略。
2.List list=session.createCriteria(Event.class)
.add(Restrictions.gt("id",new Long(12)))
.addOrder(Order.desc("title"))
.list();生成Sql语句为条件查询语句Select...as...as..from..返回一个List列表。
3.用session.get(class,id);的方式的得到一个实例obj,在用session.update(obj);修改查询出来的数据。
还有很多很多贴近sql语句的Java代码。如:
List list=session.createSQLQuery("select * from EVENTS as e where e.EVENT_ID>12").list();
整理下今天所学,主要是用Session来操作数据库进行增删改查:
具体步骤如下:用HibernateUtil.getSessionFactory().openSession;打开一个session,在用session里面的方法进行数据库控制。
Session方法列举:
1. Session session=HibernateUtil.getSessionFactory().openSession;
Session.beginTransaction(); session.save(obj); session.getTransaction().commit(); session.close(); 生成Sql语句insert插入语句。在hibernate.cfg.xml中设置session是否自动提交true为是false为否
<property name="connection.autocommit">false</property>
如果设置为TRUE的话Session.beginTransaction();session.getTransaction().commit();可省略。
2.List list=session.createCriteria(Event.class)
.add(Restrictions.gt("id",new Long(12)))
.addOrder(Order.desc("title"))
.list();生成Sql语句为条件查询语句Select...as...as..from..返回一个List列表。
3.用session.get(class,id);的方式的得到一个实例obj,在用session.update(obj);修改查询出来的数据。
还有很多很多贴近sql语句的Java代码。如:
List list=session.createSQLQuery("select * from EVENTS as e where e.EVENT_ID>12").list();