Hibernate入门实例——外置命名查询(Externalizing named queries)

hibernate简单示例 使用hibernate实现一套基本的增删改查,了解hibernate最基本的配置,初学者适用,欢迎下载 立即下载
package com.metis.hibernate.test; 

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

import org.hibernate.Query;
import org.hibernate.Session; 

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

/**
 * 外置命名查询(Externalizing named queries)
 * 
 * 你可以在映射文件中定义命名查询(named queries)。 
 * (如果你的查询串中包含可能被解释为XML标记(markup)的字符,别忘了用CDATA包裹起来。) 
 * 
 */
public class TestNamedQuery { 

    public static void main(String[] args) {
        Session session = HibernateUtil.openSession();
        Query query = session.getNamedQuery("person.by.age");
        query.setInteger("age", 20);
        List list = query.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入门小例子 hibernate入门小例子,采用mysql(sql-front)数据库 立即下载

相关推荐

康耐视 VisionPro CogImageFileTool(将获得的图像保存至文件或从文件中获取图像)工具

VisionPro CogImageFileTool(将获得的图像保存至文件或从文件中获取图像)工具

zhihuishuxia__的博客 2065

Spring Data Elasticsearch4.0.1中文翻译文档(附录)

附录 附录 A: 名称空间引用 这个 <repositories />元素 存储库 / 元素触发 Spring 数据存储库基础结构的设置。 最重要的属性是 base-package,它定义了扫描 Spring 数据存储库接口的包。 请参阅“XML 配置”。 下表描述了存储库 / 元素的属性: Name 名称 Description 描述 base-package 在自动检测模式下定义要扫描的包,用于扩展 * Repository (实际接口由特定的 Spring Data 模块决

weixin_44216706的博客 816

基于python的奥运会历史数据分析【120年】

数据分析实战案例

xff123456_的博客 3339

Spring Data JPA 原理与实战第七天 JpaRepoitory进阶、Auditing使用

11 JpaRepoitory 如何自定义? 通过前面课时的内容,相信你已经掌握了很多 Repository 的高级用法,但是在实际工作场景中也难免会出现自定义 Repsitory 实现类的场景,这一课时我们就来看一下如何定义自己的 Repository 实现类。要知道 JPA 的操作核心是 EntityManager,那么我们先看看 Entitymanager 究竟为何物。 EntityManager 介绍 Java Persistence API 规定,操作数据库实体必须要通过 EntityManag

fegus的博客 1659

深入剖析一个卷积块(ConvBlock)

深入剖析一个卷积块(ConvBlock)

qq_45670407的博客 1926

节卡Jaka Zu APP编程避坑指南:从频繁通讯错误到稳定Socket交互的调试心得

本文详细解析了节卡Jaka Zu APP编程中常见的通讯错误问题,并提供了从基础排查到高级调试的完整解决方案。通过优化网络配置、固件匹配、心跳机制和数据交互规范,开发者可实现稳定的Socket通讯,有效提升工业机器人操控的可靠性。文章特别针对v1.6.7.3版本的典型问题给出了实用调试技巧。

weixin_42639633的博客 325

【Hibernate步步为营】--hql连接查询及外置命名查询

上篇文章详细讨论了hql查询中的实体对象查询,并在最后简单介绍了sql的原生查询,hql采用的是对象查询,所以在查询方式上和SQL可能不太相同,在学习使用hql时只需要了解不同点即可,这样能够很快上手使用hql。接下来进一步讨论hql的基本查询中的连接查询和外置命名查询。

航帆远洋 3967

Scratch全攻略:从入门到实践的编程之旅

Scratch 是一款由麻省理工学院(MIT)开发的图形化编程工具 ,它诞生的初衷是为了让编程教育更加普及,尤其是让孩子们能够轻松接触和学习编程。与传统的基于文本代码的编程方式不同,Scratch 通过将编程指令以图形化的积木形式呈现,极大地降低了编程的门槛,让编程变得如同搭积木一样简单有趣。

邓邓子的博客 1万+

Eclipse快速上手Hibernate--1. 入门实例

    这篇文章主要谈谈Hibernate的入门开发,例子很简单,就是向数据表中添加用户名和密码。我分别使用了三种方法,一种是直接写代码,写Hbm映射文件等;一种是通过Hbm映射文件来生成代码;一种是通过代码来生成Hbm映射文件。使用了一些自动化工具,XMLBuddy是用来编辑XML文件的,JBoss Eclipse IDE是用来编写Doclet标记的。这篇文章还谈到了一些Eclipse的使用技巧

分享Java快乐 5万+

光学传播仿真软件:SPEOS_(14).建筑物内光环境仿真

在建筑物内光环境仿真中,材料属性的定义直接影响光的传播和反射效果。SPEOS提供了丰富的材料库,但也可以自定义材料属性以满足特定需求。创建新材料选择Materials->。输入材料名称和类型。配置材料属性选择材料对象,打开属性编辑器。设置反射率、透射率、表面粗糙度和颜色。# 导入SPEOS模块# 创建新材料# 配置材料属性custom_material.set_reflectivity(0.8) # 设置反射率为0.8。

kkchenjj的博客 1251

tar解压报错 gzip: stdin: unexpected end of file tar: Unexpected EOF in archive

错误现象: [root@centos7-xinsz08 ~]# tar xf prometheus-2.7.2.linux-amd64.tar.gz gzip: stdin: unexpected end of file tar: 归档文件中异常的 EOF tar: 归档文件中异常的 EOF tar: Error is not recoverable: exiting now 错误原因排查 ...

互联网老辛 2万+

Hibernate外置命名查询报错:Named query not known: serachStu

Hibernate提供了外置命名查询方式,将hql语句放在一个单独的文件中,而不是直接放在程序中。 我的代码: <![CDATA[ select s from Student s where s.id>? ]]> 结果在java测试类中执行 List list = session.getName

matao409的专栏 2083

【即插即用模块】注意力篇 | TIP 2024 | 注意力机制的有效改进!内容引导注意力块CGA,空间-通道-像素三个维度融合,实现涨点!

CGA(Content-Guided Attention)是一种融合多维度注意力的即插即用模块,通过并联空间和通道注意力并与像素注意力串联,实现从通道、空间到像素的三层级特征筛选。该模块采用层级递进设计,解决了传统单维度注意力的局限性,尤其适用于图像恢复等对特征精度要求高的任务。实验表明,CGA在去雾任务中能显著提升指标,但会略微增加参数量。模块代码支持灵活集成到各类视觉模型中,建议放置在网络靠前位置以充分释放后续层性能。其核心创新在于通过7×7大卷积捕捉长距离依赖,结合分组卷积实现像素级细粒度建模

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 230

018——hibernate外置命名查询

实体类以及映射文件请参考015篇 修改Student映射文件为: <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

msj_god_boy的博客 269

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

hibernate HQL查询、条件查询、SQL查询、外置命名查询(四种查询)

☟本文章采用测试类学习查询方式 1、HQL查询 (1)用户名属性查询,查询(用户名为小化且id=3)的用户的用户名 // 查询函数 @Test public void getUser1() { Session session = HibernateUtils.getSession();// 获取session对象 // 普通hql查询(用户名为小化且id=3)的用户的用户名(...

每天就学一点点的博客 1734

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Hibernate命名查询示例 - @NamedQuery

Hibernate命名查询示例 - @NamedQuery 欢迎使用Hibernate命名查询示例教程。我们看到了如何在Hibernate中使用HQL和Native SQL Query。如果有很多查询,那么它们将导致代码混乱,因为所有查询将分散在整个项目中。这就是Hibernate提供命名查询的原因,我们可以在中心位置定义并在代码中的任何位置使用它们。我们可以为HQL和Native ...

YunWisdom 1388

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

NamedQuery用法

Employee.hbm.xml <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">

apache988的专栏 2722

Hibernate @NamedQueries

JPA的命名查询实际上就是给查询语句起个名字,执行查询的时候就是直接使用起的这个名字,避免重复写JPQL语句,使查询在代码中得到更多的重用。 1、使用@NamedQuery注解在实体类中定义命名查询。 @NamedQuery(name=“findAllUser”,query=“SELECT u FROM User u”) @NamedQuery中的属性name指定命名查询的名称,query属性指定...

OVO_LQ_Start的博客 793

hibernate:入门小例子

1、新建java项目 2、创建User Library:hibernate,加入如下jar * HIBERNATE_HOME/hibernate3.jar * HIBERNATE_HOME/lib/*.jar * MySql jdbc驱动 3、把新建的类库加入到项目 4、创建hibernate配置文件hibernate.cfg.xml [code="java"] ...

逆风逛飙 209

Hibernate 入门教程(纯Eclipse版)

转载自:http://blog.youkuaiyun.com/cpp_lzth/article/details/5418995 [java] view plain copy Hibernate是一个不依赖其他平台的轻量级的中间件,现在到处充斥着通过各种工具使用Hibernate进行开发的教程,如 MyEclipse, Ant, Maven等等,但是去掉这些工具,事实

janch1的专栏 434

名字查询(Named Queries)

Named Queries   每个过滤器和查询都可以在其顶层定义中接受_name。 GET /_search { "query": { "bool" : { "should" : [ {"match" : { "name.first" : {"query" : "shay", "_name...

ai23336的博客 668

Hibernate入门实例

Hibernate入门实例 1. 概述 Hibernate是一个开源的ORM框架,会自动生成SQL语句,支持数据库事务操作。开发者只需通过配置hibernate.cfg.xml和具体的持久化类映射文件,通过加载配置文件,获得session,即可以进行数据库操作。Hibernate还支持面向对象的Hibernate 查询语言HQL,这个框架本质上是对JDBC的封装,但通过配置文件的形式使得我们脱

ac_dao_di的专栏 716

MyBatis经典入门实例

周末学习了MyBatis开源框架,MyBatis是由原来的iBatis改名而来,目前已近发布了3.0.1版本。可以在官方网站http://www.mybatis.org下载。 MyBatis作为持久层框架,其主要思想是将程序中的大量sql语句剥离出来,配置在配置文件中,实现sql的灵活配置。这样做的好处是将sql与程序代码分离,可以在不修改程序代码的情况下,直接在配置文件中修改sql。下面给个简单的入门例子。 下面的例子实现从数据库中查询商品表(Goods)中id为1的商品,并打印出商品名称。 数据库

weoln的专栏 4万+
上一篇: Hibernate入门实例——使用原生SQL的查询
下一篇: Hibernate入门实例——源代码下载
weoln
博客等级 码龄21年 43粉丝 123原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值