Hibernate入门实例——使用原生SQL的查询

Hibernate 原生 SQL Hibernate 原生 SQL 原生 SQL 如果你想使用数据库特定的功能如查询提示或 Oracle 中的 CONNECT 关键字的话,你可以使用原生 SQL 数据库来表达查询。Hibernate 3.x 允许您为所有的创建,更新,删除,和加载操作指定手写 SQL ,包括存储过程。 您的应用程序会在会话界面用 createSQLQuery() 方法创建一个原生 SQL 查询: public SQLQuery createSQLQuery(String sqlString) throws Hiber 阅读详情
package com.metis.hibernate.test; 

import java.util.Iterator;
import java.util.List; 

import org.hibernate.Session; 

import com.metis.hibernate.domain.Person;
import com.metis.hibernate.util.HibernateUtil; 

/**
 * 使用原生SQL的查询
 *  你可以使用createSQLQuery()方法,用SQL来描述查询,
 *  并由Hibernate处理将结果集转换成对象的工作。 
 *  请注意,你可以在任何时候调用session.connection()来获得并使用JDBC Connection对象。
 *  如果你选择使用Hibernate的API, 你必须把SQL别名用大括号包围起来
 *  
 * 
 */
public class TestSqlQuery { 

    public static void main(String[] args) {
        Session session = HibernateUtil.openSession();
        List list = session.createSQLQuery("select {p.*} from person {p} where {p}.age > 20")
        .addEntity("p", Person.class)
        .list();
        Iterator it = list.iterator();
        while(it.hasNext()){
            Person person = it.next();
            System.out.print("id:"+person.getId());
            System.out.print(" name:"+person.getName());
            System.out.println(" age:"+person.getAge());
        }
        HibernateUtil.closeSession();
    } 

}
hibernate 执行原生sql的几种方式 NULL 博文链接:https://ynp.iteye.com/blog/2007053 立即下载

相关推荐

nRF52840 低功耗蓝牙开发指南:从硬件架构到物联网应用实战

本文深入解析nRF52840低功耗蓝牙芯片的硬件架构与开发实践,涵盖从开发环境搭建到BLE协议栈开发的详细指南。通过实战案例分享低功耗优化技巧,帮助开发者高效实现物联网应用,特别适合智能家居和工业场景。

d3e4f的博客 419

hibernate _HQL查询多表查询与原生SQL查询

一:HQL查询(多表查询,但不复杂时使用)1、Hibernate独家查询语言 2、属于面向对象的查询语言 3、使用HSQL语句查询是,不能出现数据库相关的信息的1、基本查询2、条件查询1、?号占位符2、命名占位符3、分页查询4、映射查询1、java.lang.Object表示查询所有的表2、映射查询 需要实体类中必须有构造方法,并且构造方法的参数一致二:原生SQL查询(复杂的业务查询)1、基本查询...

weixin_34392435的博客 558

一步步教你离线安装vsftpd并配置FTP服务

在安装vsftpd之前,需确保系统更新至最新版本,并检查防火墙配置以允许FTP流量。安装过程涉及使用包管理器(如apt-get或yum)下载vsftpd及其依赖包,特别是在离线环境中,需先下载所有相关包并传输到目标机器。安装完成后,通过命令验证安装并启动服务。配置vsftpd包括编辑配置文件以设置访问权限和安全性参数,如匿名访问和本地用户访问。此外,需配置防火墙开放FTP端口,并通过FTP客户端测试服务。最后,建议进行安全配置,如禁用匿名访问和配置SSL/TLS加密,并设置日志记录以监控服务状态。

a_join的博客 2488

Hibernate中多表联合查询遇到的问题(原生态的SQL语句解决办法)

如何把多表的联合查询的结果放在一个没有和数据库映射的实体类? 首先,建立一个用于保存联合查询结果的实体类。 第二,建立一个sql语句,一般情况下。我喜欢使用 SQLQuery query = session.createSQLQuery("sql语句");这样的话就可以省去增加实体类的那一步操作,即addEntity()。 在前期做的时候就遇到了一个误区,我以为结果是新建实体类的一个集合,但

qq_15925401的博客 989

西门子TM PosInput1模块SSI编码器配置与速度测量实战

本文详细介绍了西门子TM PosInput1模块配置SSI绝对值编码器的实战步骤,涵盖硬件组态、工艺对象配置、编程实现与速度测量优化。重点解析了高分辨率编码器的数值处理技巧和常见调试问题,帮助工程师快速实现高精度位置与速度检测,提升自动化项目效率。

emacs5lisp的博客 340

强化学习:Distributed PPO (DPPO) 学习笔记

DPPO = Distributed + Proximal Policy Optimization Distributed:多个智能体并行训练 Proximal:限制策略更新幅度,确保稳定性 Policy Optimization:基于策略梯度的优化方法 核心思想:多个智能体并行探索环境,共享经验,通过裁剪策略更新确保训练稳定

只是个人学习笔记 1332

关于Hibernate在使用原生SQL语句多表查询所遇到的问题

关于Hibernate在使用原生SQL语句多表查询所遇到的问题今天早上想实现商品的分类功能时,使用的是原生SQL语句中的多表查询语法,遇到的问题: 1、写好SQL语句后,调用createQuery(hql)方法是出现 org.hibernate.hql.internal.ast.QuerySyntaxException异常,该异常信息是映射文件的字段与数据库字段不一致,或者名称不一致导致; publ

z2432356108的博客 1128

MLNX_OFED 5.4-3.7.5.0 驱动安装:银河麒麟V10SP2 ARM 内核升级后编译避坑 3 步

本文详细介绍了在银河麒麟V10SP2 ARM环境下安装MLNX_OFED 5.4-3.7.5.0驱动的完整流程,包括内核升级后的驱动兼容性挑战、编译环境准备、分步编译与安装流程以及性能优化与故障排查。特别针对国产化ARM服务器(如华为Atlas系列)提供了实用的解决方案和常见问题处理建议,帮助用户顺利完成mlnx网卡驱动的安装与配置。

weixin_29184075的博客 406

Hibernate的SQL查询

4.5 SQL查询 Hibernate还支持使用SQL查询,使用SQL查询可以利用某些数据库的特性,或者用于将原有的JDBC应用迁移到Hibernate应用上。使用命名的SQL查询还可以将SQL语句放在配置文件中配置,从而提高程序的解耦,命名SQL查询还可以用于调用存储过程。 如果是一个新的应用,通常不要使用SQL查询。 SQL查询是通过SQLQuery接口来表示的,SQLQuery接口是Quer...

weixin_30566063的博客 329

django安装mysqlclient (Windows下正确安装mysqlclient)

由于本人也是初学Python和django。本人使用的Python版本是3.7所以连接MySQL数据库需要安装数据驱动,对应Python3的数据驱动是mysqlclient。因此本人习惯性的使用命令pip install mysqlclient,结果安装失败 (venv) C:\Users\songlihui\PycharmProjects\autotest>pip install my...

songlh1234的博客 2万+

【推荐100个unity插件】制作美丽 Unity 景观,增强Terrain材质表现的插件——GTS

GTS地形着色器是一款专为Unity设计的强大工具,可解决地形纹理绘制和光照处理的难题。它提供一键式配置,支持实时调整地形效果,包含细节注入、高度混合、雪注入等核心功能,并兼容网格地形和低多边形模型。插件完美集成Gaia天气系统,支持HDRP细分效果。安装后通过GTS管理器创建配置文件并应用到地形,即可快速生成高质量地形渲染。其模块化设计包含全局设置、网格转换和细节调整等面板,使开发者能灵活控制地形表现,显著提升视觉效果与性能表现。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 1568

Hibernate使用原生SQL查询

Hibernate使用原生SQL查询   Hibernate提供了原生的SQL语句的查询,通过createSQLQuery(String)和createNativeQuery(String),createSQLQuery(String)是Hibernate5.x之前的版本的,在Hibernate5.x和之后,都采用的是createNativeQuery(String),使用原生SQL虽然麻烦,但是...

莫负时光 5364

ceph recovery 相关参数

可以修改的最大回填/恢复选项列在 “恢复/回填选项” 部分。mClock 的修改 默认回填/恢复限制由 osd_mclock_override_recovery_settings 选项,设置为 默认为 false。尝试修改任何默认恢复/回填限制而不设置门控选项,会将该选项重置为 mClock 默认值,并在集群日志中记录一条警告消息。请注意,默认值可能需要几秒钟才能恢复生效。请使用 config show 命令验证限制,如下所示。就直接设置以下参数,过一会就变回了默认值。简单点说官网的意思就是不设置。

weixin_40548182的博客 280

Hibernate原生sql查询入门

package cn.zhicheng.domain; import java.util.List; import org.hibernate.Criteria; import org.hibernate.SQLQuery; import org.hibernate.Session; import org.hibernate.Transaction; import org.junit.Test...

weixin_40007271的博客 253

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

hibernate 执行原生sql,select返回string,long

给大家送一个小福利附高清脑图,高清知识点讲解教程,以及一些面试真题及答案解析。送给需要的提升技术、准备面试跳槽、自身职业规划迷茫的朋友们。《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!面试真题及答案解析。送给需要的提升技术、准备面试跳槽、自身职业规划迷茫的朋友们。[外链图片转存中…(img-ahIExygC-1712576025879)]《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

2401_84048895的博客 882

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Hibernate(一)HQL查询、原生sql查询

Hibernate中支持三种查询方式:HQL(Hibernate Query Language),原生sql查询,Criteria查询。HQL是一种面向对象的查询语言,其中没有表和字段的概念,只有类、对象、属性的概念;原生sql查询就是我们程序员手动的写sql语句并执行;Criteria查询又称为对象查询,采用真正的面向对象的方式进行查询,原生sql查询和Criteria查询将在后续篇章中进行讲解

代码与酒 6437

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Hibernate 使用原生 Native SQL

Hibernate 是 DBA 最讨厌的框架之一, 在于 HQL 的滥用, 导致后期调优极度困难, 复杂的查询还是需要使用原生 SQL 来进行, 那么熟悉原生 SQL 调用就至关重要...

wenniuwuren 5011

Hibernate使用原生SQL语句(left join左连接查询)

Hibernate使用原生SQL语句 以下是本人对Hibernate使用原生SQL语句的理解: 在项目开发当中使用Hibernate提供的HQL有时候不能满足需求,尤其是多表查询或者是多表中没创建主外键关联关系,我也试过平常的连接 比如说a表和b表,a、b表没建立主外键关系。a、b表对应的实体为A、B(SQLServer语法) create table a ...

龚小帅的博客 2993

Hibernate原生SQL查询

Hibernate除了支持HQL查询外,还支持原生SQL查询。 对原生SQL查询执行的控制是通过SQLQuery接口进行的,通过执行Session.createSQLQuery()获取这个接口。该接口是Query接口的子接口。 执行SQL查询步骤如下: 1、获取Hibernate Session对象 2、编写SQL语句 3、通过Session的createSQLQuery方法创建查询对象 4、调用...

lgxzzz的博客 647

Hibernate实战——原生SQL查询

一配置文件 <?xml version="1.0" encoding="GBK"?> <!-- 指定Hibernate配置文件的DTD信息 --> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http:...

实践求真知 786

Hibernate原生SQL查询多表关联,SQL语句要注意的问题

Hibernate原生SQL查询多表关联,SQL语句要注意的问题@for&ever 2009-9-4 系统环境:MySQL5.1Hibernate3.3 有如下的假定:实体类 Question 和 Answer分别对应数据表 question 和answer。并且表 question 和answer 的字段大部分都一样,字段数目也一样。 执行如下的操作:

for ever的log——永远的足迹 1万+

Hibernate使用原生SQL语句

以下是本人对Hibernate使用原生SQL语句的理解: 在项目开发当中使用Hibernate提供的HQL有时候不能满足需求,尤其是多表查询或者是多表中没创建主外键关联关系,我也试过平常的连接 比如说a表和b表,a、b表没建立主外键关系。a、b表对应的实体为A、B               (SQLServer语法) create table a ( aId int

沉底的石头 2063

hibernate使用原生sql查询Hibernate原生SQL多表查询字段名重复问题以及解决方法

注:实际业务中可能比较复杂不得不用原生sql执行时可能会遇到该问题,为了描述问题,本例采用简单的举例 表1: tbtask: 具有如下列:taskId,name,groupId 表2: tbtaskGroup: 具有如下列:tbgroupId,name 使用原生sql表连接获取task表和group表的name信息 select task.name,group.name from ...

Bolg of EQuaker 1079

在hibernate中,如何把原生sql查询出来的结果映射到实体bean

大家都知道hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装。 个人觉得,hibernate自带的hql语句却不见得很好用。 现实工作中,有很多场景是用到原生sql进行查询的,比如oracle的递归、复杂语句查询等。或许hql也能进行递归、复杂语句的查询,但像我这种用惯ibatis的,很是不爽hql。 简单举个例子说一下,hq

宇强的一亩三分地 6380

Hibernate 原生SQL 与 (标量查询、字符串查询、实体查询)

hibernate是支持sql语句查询的,他称之为原生sql,因为他的写法并不是纯sql......     解决Hibernate原生SQL映射问题 在问答里和论坛中,经常看到有人问,怎样将使用本地SQL查询出来的结果映射为值对象的问题,这里就Hibernate中提供的方法做个结论。前提, 这里没有使用属性的延迟加载技术。 假设有个值对像,如下: Java代码 1. package test; 2. 3. pub

方逸涛的专栏 4303
上一篇: Hibernate入门实例——条件查询(Criteria queries)
下一篇: Hibernate入门实例——外置命名查询(Externalizing named queries)
weoln
博客等级 码龄21年 43粉丝 123原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值