HIbernate中一些常见的方法
在这里先记住Hibernate中一些常见数据库操作的方法使用情况,先声明前面的固定语句:
?
?
??? ??? Configuration config=new Configuration();
??? ??? config.configure();
??? ??? SessionFactory factory=config.buildSessionFactory();
??? ??? Session session=factory.openSession();
Configuration是负责管理Hibernate的配置信息。Hibernate运行时需要获取一些底层实现的基本信息
Configuration实例化默认是加载CLASSPATH中的hibernate.cfg.xml文件,我们也可以手动指定
Configuration cfg=new Configuration().config("myhibernate.hbm.xml");
?
这里使用到的guest是一个对象
?
(1)save()
用于保存数据
session.save(guest);
?
(2)get()和load()使用
这两个方法都可以保存数据:
GuestBook guest=(GuestBook)session.get(GuestBook.class, new Integer(1));
GuestBook guest=(GuestBook)session.load(GuestBook.class, new Integer(1));
其中第二个参数是指明要读取的哪一条记录。
主要区别是load是一定能读取数据出来的,也就是说数据库中一定有这条记录,如果没有就会出错,而get读取时如果发现数据库中没有这条记录就会返回null。
?
(3)update()更新
??GuestBook guest=(GuestBook)session.get(GuestBook.class, new Integer(1));
??guest.setName("chenghua");
??session.update(guest);
先通过get方法获取对象,在使用set设置要改的值,然后再update
?
(4)detele()删除
??GuestBook guest=(GuestBook)session.get(GuestBook.class, new Integer(1));
??session.delete(guest);
和更新一样也是先获取对象,在删除。
?
(5)Query query=session.createQuery("from GuestBook");查找数据库中的记录,注意这里是HQL语句,from后面那个GuestBook是对象而不是表名。
??List<GuestBook> lists=query.list();
??for(GuestBook g:lists)
??{
???System.out.println(g.getName());
??}
?
通过Query的list方法取出对象信息
?
更新中。。。。