欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Hibernate的HQL语法

程序员文章站 2022-07-11 20:22:51
...

Hibernate的数据库操作:

首先先获得session对象,

Session se = HibernateSessionFactory.getSession();

获得用户对象,

User user=new User();

user.setName("张三");

插入:se.save(user);

删除:se.delete(user);

修改:se.update(user);

查询

   a) se.get(User.class,id);

   通过指定的ID查询数据库表中的数据,参数1是指需要执行查询的实体;参数2是指查询条件的ID内容

   b) se.load(User.class,id);

   通过指定的ID查询数据库表中的数据,参数1是指需要执行查询的实体;参数2是指查询条件的ID内容

get与load的区别,load属于一种延迟加载的查询操作,在获得load方法操作的时候应用程序不会直接访问数据库,当方法返回的对象操作成员的时候才会与数据产生交互,而get属于一种即使加载的查询操作,在调用get方法的时候直接与数据库交互。

   c)CreatSQLQuery(参数)

    通过指定的SQL语句执行数据库交互操作

    参数:SQL语句

    String sql="select * from user";

    se.creatSQLQuery(sql).list();

   d)CreatQuery(参数)

    通过指定的HQL语句执行数据库交互操作

    特征:使用对象方式完成数据库操作

    语法:

            SQL:select * from 表名 where 字段名 = 值;

            HQL:from 对象名 where 属性名 = 值;

    查询所有:se.creatQuery("from user");

    条件查询:

    方式一:  Query q = se.creatQuery("from user where UId = ?");

                     q.setParameter(0,1);//设置UId的值;

    方式二:   Query q = se.creatQuery("from user where UId = id");

                     q.setParameter("id",1);//设置UId的值;

   d)se.creatCriteria(User.class);

    基于应用程序的一种查询方式,不支持SQL语句。

 

 

相关标签: Hibernate