博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
条件查询、SQL、JPQL、HQL比较
阅读量:5069 次
发布时间:2019-06-12

本文共 742 字,大约阅读时间需要 2 分钟。

一、什么是JPQL

在 Java EE 中,JPQL( Java 持久性查询语言)是专门为Java 应用程序访问和导航实体实例设计的。JPQL是EJB2使用的查询语言EJB QL的扩展,它继承了EJB QL并对其做了一些改变。

二、JPQL与SQL

  PQL是面向对象的查询语言,因此它可以完全理解继承、多态和关联等特征。而且JPQL内置了大量函数,极大地方便了JPQL查询的功能。当然JPQL底层依然是基于SQL的,但JPQL到SQL的转换无须开发者关心,JPQL解析器会负责完成这种转换,并负责执行这种转换的SQL语句来更新数据库。 

  SQL是面向关系数据库的查询语言,因此SQL操作的对象是数据表、数据列;而JQPL操作的对象是实体对象,对象属性。

代码对比

SQL:

//原生的SQL语句select name,age,user_id from t_user

JPQL:

//面向对象的JPQL语句select name,age,userId from User

分析: 

    第一条语句用于对t_user table表执行查询,查询name、age、user_id三个数据列; 
    第二条语句用于对User实体执行查询,查询的是User实体的name、age、userId 属性。

三、HQL

HQL(Hibernate Query Language)是面向对象的查询,from后面跟的是“表名”,where后用“表中字段”做条件。在Hibernate中使用查询时,

一般用HQL查询语句。因为HQL是面向对象的,而对象类的名称和属性都是大小写敏感的,所以是大小写敏感的。

转载于:https://www.cnblogs.com/tgq0101457/p/9230573.html

你可能感兴趣的文章
eclipse打war包并在tomcat上部署运行(附增大tomcat内存)
查看>>
二叉搜索树转双向链表
查看>>
vim 粘贴文本,格式混乱 tab
查看>>
mysql记录的增删改和单表查询
查看>>
linux系统下 git 使用教程
查看>>
js基础学习之-js包装对象
查看>>
ZOJ 3080 ChiBi(spfa)
查看>>
JavaScript JSON
查看>>
大数据迁移实践之路
查看>>
springmvc基础知识:配置;ajax;重定向;文件上传
查看>>
Visual Studio for Mac 安装
查看>>
python操作redis
查看>>
如何编写更棒的代码
查看>>
很垃圾的快排加
查看>>
mysql添加外键
查看>>
递推算法
查看>>
隔離された街のゲート [MISSION LEVEL: B]
查看>>
BZOJ 1029: [JSOI2007]建筑抢修 优先队列
查看>>
2015北京网络赛 A题 The Cats' Feeding Spots 暴力
查看>>
Educational Codeforces Round 8 F. Bear and Fair Set 最大流
查看>>