数据库类有关论文范文集,与关于Hibernate查询方法的相关论文答辩

时间:2020-07-05 作者:admin
后台-系统-系统设置-扩展变量-(内容页告位1-手机版)

本论文是一篇数据库类有关论文答辩,关于关于Hibernate查询方法的相关大学毕业论文范文。免费优秀的关于数据库及参考文献及对象方面论文范文资料,适合数据库论文写作的大学硕士及本科毕业论文开题报告范文和学术职称论文参考文献下载。

摘 要:本文探讨了Hibernate查询的五种方法:HQL查询,本地SQL查询,命名查询,对象化查,动态分离查询.

关 键 词:HQL查询;本地SQL查询;命名查询;对象化查询;动态分离查询

中图分类号:TP312.1文献标识码:A文章编号:1007-9599(2012)20-0000-02

Hibernate是一个开源的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,完成数据持久化的重任.本文举例探讨了Hibernate查询的五种方法:

1HQL查询(HibernateQueryLanguage)

1.1HQL是Hibernate查询语言,是一种面向对象的查询语言,操作的对象是类、实例、属性等,是一种select等from的语法结构,from后跟的是实体类名,而不是表名.

示例1:

Queryquery等于session.creatQuery("fromUser");

Listlist等于query.list();

查询返回的类型可以为:Object[]数组、List类型、Map类型、Java实体对象.

示例2:

Queryquery等于session.creatQuery("selectu.name,u.telephonefromUseruwherename等于:name");//使用命名参数查询

query.setString("name",name);

Listlist等于query.list();

HQL提供一种面向对象的查询语言,其语法更接近传统的SQL语句的查询语法.使用HQL能够避免使用JDBC查询的一些弊端:首先,不需要再编写繁琐的SQL语句,将针对实体类及其属性进行查询,其次,查询结果是直接存放在List中的对象,不需要再次封装.而且HQL独立于数据库.

2本地SQL查询

HQL查询功能虽然强大,但是HQL不能涵盖所有的查询特性,有时不得不借助SQL达到期望的目标.HQL对本地SQL查询提供了内置的支持,称为本地SQL查询:

关于Hibernate查询方法的参考属性评定
有关论文范文主题研究: 数据库相关论文范文 大学生适用: 高校毕业论文、学术论文
相关参考文献下载数量: 68 写作解决问题: 写作参考
毕业论文开题报告: 论文任务书、论文总结 职称论文适用: 职称评定、职称评中级
所属大学生专业类别: 写作参考 论文题目推荐度: 经典题目

示例3:

Queryquery等于session.createSQLQuery("select*fromt_user").addEntity(User.class);

Listrs等于query.list();

"select*fromt_user"为SQL语句,from后为表名.此方法的缺点是破坏跨平台,不面向对象.

3命名查询

Hibernate中可以命名常用的查询,需要使用的是只需要引用名称就可以了,命名查询一般配置在实体类中.

3.1XML配置命名查询

示例4:

<![CDATA[fromUserwhereid=:id]]>

Queryquery等于session.getNamedQuery("getUserById");


该文出处:http://www.sxsky.net/benkelunwen/060246658.html

query.setInteger("id",id);

Listlist等于query.list();

这种方法以松耦合的方式来配置查询语句,从而可以更好地提高程序解耦.

3.2@配置命名查询

使用@注解配置实体类时,要使用@注解配置命名查询,用到的Java注解为@NamedQuery与@NamedNativeQuery.

示例5:

@NamedQuery(name等于"allUser",query等于"fromUser")//命名查询

@NamedNativeQuery(name等于"allUser",query等于"select*fromtab_user")//命名本地查询

@Entity

@Table(name等于"tab_user")

PublicclassUser{

}

Queryquery等于sesssion.getNamedQuery("allUser")

4对象化查询Criteria方法:

4.1Criteria查询采用面向对象的方式封装查询条件,对SQL语句进行封装,采用对象的方式来组合各种查询条件,由Hibernate自动产生SQL查询语句.

示例6:

Criteriacriteria等于Session.createCriteria(User.class);

criteria.add(Restrictions.eq("name",name));

criteria.add(Restrictions.eq("pwd",pwd));

Listlist等于criteria.list();

使用Criteria查询需要首先创建criteria对象,传入的参数是对应的实体类的类型对象.4.2Example查询

在使用criteria查询时,设定查询条件并非一定要使用Restrictions,如果属性条件很多,使用Restrictions也不方便.如果已经有了一个对象,那就可以根据这个对象作为查询的

后台-系统-系统设置-扩展变量-(内容页告位2-手机版)
声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:123456789@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。
后台-系统-系统设置-扩展变量-(内容页告位3-手机版)