主页 > 知识库 > 基于JPQL实现纯SQL语句方法详解

基于JPQL实现纯SQL语句方法详解

热门标签:呼叫中心市场需求 AI电销 Linux服务器 百度竞价排名 地方门户网站 铁路电话系统 服务外包 网站排名优化

JPQL全称Java Persistence Query Language。

基于首次在EJB2.0中引入的EJB查询语言(EJB QL),Java持久化查询语言(JPQL)是一种可移植的查询语言,旨在以面向对象表达式语言的表达式,将SQL语法和简单查询语义绑定在一起·使用这种语言编写的查询是可移植的,可以被编译成所有主流数据库服务器上的SQL。

其特征与原生SQL语句类似,并且完全面向对象,通过类名和属性访问,而不是表名和表的属性。

使用JPQL,需要把SQL语句修改成类似HQL 语句。SQL 查询的是数据库,而JPQL 查询的是对象和属性,在语法上是有些不同的。对于有些用JPQL 无法写出来的查询,还是使用原生SQL写出来方便

以下给出一个例子,注意语法的区别:

JPQL查询

@PersistenceContext
protected EntityManager em;

public ListVideo> findVideoList1() {
  String hql = "from Video order by id desc";
  Query query = em.createQuery(hql);
  ListVideo> result = query.getResultList();
  em.clear();
  return result;
}

SQL查询

查询最近7天的数据

public ListVideo> findVideoList2() {
  ListVideo> result = (ListVideo>) em.createNativeQuery
    ("select * from db_video where date_sub(curdate(), interval 6 day) = date(date) order by date desc", Video.class)
    .getResultList();
  return result;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
  • JPA之使用JPQL语句进行增删改查
  • mysql5.7.19 解压版安装教程详解(附送纯净破解中文版SQLYog)
  • 纯Python开发的nosql数据库CodernityDB介绍和使用实例
  • 3步搞定纯真IP数据导入到MySQL的方法详解
  • 用纯CSS+DIV写的漂亮Flash幻灯片及SQL标签教程!
  • SQL删除语句DROP、TRUNCATE、 DELETE 的区别
  • mybatis-plus配置控制台打印完整带参数SQL语句的实现
  • 在IDEA中安装MyBatis Log Plugin插件,执行mybatis的sql语句(推荐)

标签:崇左 兰州 湘潭 铜川 仙桃 衡水 黄山 湖南

巨人网络通讯声明:本文标题《基于JPQL实现纯SQL语句方法详解》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266