编程技术分享:Hibernate开发心得

王朝other·作者佚名  2008-05-31
宽屏版  字体: |||超大  

hibernate核心接口:

Session 、 Transaction 、 Query 、Configuration

Configuration :配置、根启动Hibernate 创建SessionFactory对象

SessionFactory :初始化Hibernate创建Session对象

Sesssion :负责保存、更新、删除、加载和查询对象

Transaction :治理事务

Query和Criteria : 执行数据库查询

Query query = session.createQuery("from Customer c where c.name =:name");

query.setParameter("name","tom",Hibernate.STRING);

Sessin 接口方法 :

save();

updata();

delete();

load();

find();

Session 通过 SessionFactory.opensession()方法获得;

控制事务一起Transaction

Session session = SessionFactory.openSession();

Transaction tx = null ;

try{

tx = session.begionTransaction();

//逻辑方法

tx.commit();

}

catch(Exception e){

e.printStackTace();

if(tx != null)tx.rollback();

thows e ;

}

finlly{

session.close();

}

//session.save(customers)执行下列SQL语句:

insert into CUSTMERS (ID , NAME , EMAIL , PASSWord , PHONE , ADDRESS , SEX , IS_MARRIED , DESCRIPTION ,

IMAGE , BIRTHDAY , REGISTERED_TIME ) VALUES (1 , 'TOM' , '1234', 55556666 ,'SHANGHAI','M' , 0 ,

'I AM VERY HONEST' @ ,'1980-05-06' , NULL);

//session.find("from customer as c order by c.name asc")执行下列SQL语句:

select * from CUSTOMERS order by name asc ;

//(customer)session.load(customer.class,customer_id)执行下列SQL语句:

select * from CUSTOMERS WHERE ID = 1 ;

update CUSTOMERS SET NAME = 'TOM' ,EMAIL ='TOM@YAHOO.COM' ,ADDRESS = 'BEIJING' WHERE ID = 1;

//session.delete("from CUSTOMER AS C");执行下列SQL语句:

select * from CUSTOMERS ;

DELETE FROM CUSTOMERS WHERE ID = 1;

或是:session.load(customers.class,id);

session.delete(customer);

或是:

session.load(customers.class,new int(1));

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有