本文展示三种在Hibernate中使用SQL语句进行数据查询基本用法

  1、基本查询

  2、条件查询

  3、分页查询

package com.Gary.dao;

import java.util.List;

import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.query.NativeQuery; import com.Gary.domain.User;
import com.Gary.utils.HibernateUtils; public class SQLDao { public void find()
{
Session session = HibernateUtils.getSession();
Transaction beginTransaction = session.beginTransaction(); //开始进行SQL查询
String sql = "select * from user"; //创建sql查询对象
NativeQuery query = session.createSQLQuery(sql);
query.addEntity(User.class); //接收list
List<User> list = query.list();
//接收单一返回值 query.uniqyeResult(); //输出第一个成员姓名
System.out.println(list.get(0).getUsername());
//结束SQL查询 beginTransaction.commit();
session.close(); } //SQL条件查询
public void find2()
{
Session session = HibernateUtils.getSession();
Transaction beginTransaction = session.beginTransaction(); //开始进行SQL查询
String sql = "select * from user where id = ?";
//创建SQL查询对象
NativeQuery query = session.createSQLQuery(sql);
//封装参数,给第一个?赋值
query.setParameter(1, "1"); query.addEntity(User.class);
//唯一返回值
User user = (User) query.uniqueResult();
System.out.println(user);
//结束SQL查询 beginTransaction.commit();
session.close(); } //SQL分页查询
public void find3()
{
Session session = HibernateUtils.getSession();
Transaction beginTransaction = session.beginTransaction(); //开始进行SQL查询
String sql = "select * from user limit ? , ?";
//创建SQL查询对象
NativeQuery query = session.createSQLQuery(sql);
//封装参数,给第一个?赋值
query.setParameter(1, 0);
//同理
query.setParameter(2, 2);
query.addEntity(User.class);
//唯一返回值
List<User> list = query.list();
System.out.println(list.get(0).getUsername());
//结束SQL查询 beginTransaction.commit();
session.close(); } }

SQLDao.java

  数据库user表

  向数据库中添加假数据

  

1、SQL基本查询

  //开始进行SQL查询
  String sql = "select * from user";   //创建sql查询对象
  NativeQuery query = session.createSQLQuery(sql);
  query.addEntity(User.class);

  SQLDao.java向数据库发起查询请求

public void find()
{
Session session = HibernateUtils.getSession();
Transaction beginTransaction = session.beginTransaction(); //开始进行SQL查询
String sql = "select * from user"; //创建sql查询对象
NativeQuery query = session.createSQLQuery(sql);
query.addEntity(User.class); //接收list
List<User> list = query.list();
//接收单一返回值 query.uniqyeResult(); //输出第一个成员姓名
System.out.println(list.get(0).getUsername());
//结束SQL查询 beginTransaction.commit();
session.close(); }

  

package com.Gary.dao;

import java.util.List;

import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.query.NativeQuery; import com.Gary.domain.User;
import com.Gary.utils.HibernateUtils; public class SQLDao { public void find()
{
Session session = HibernateUtils.getSession();
Transaction beginTransaction = session.beginTransaction(); //开始进行SQL查询
String sql = "select * from user"; //创建sql查询对象
NativeQuery query = session.createSQLQuery(sql);
query.addEntity(User.class); //接收list
List<User> list = query.list();
//接收单一返回值 query.uniqyeResult(); //输出第一个成员姓名
System.out.println(list.get(0).getUsername());
//结束SQL查询 beginTransaction.commit();
session.close(); } }

SQLDao.java

2、SQL条件查询

        //开始进行SQL查询
String sql = "select * from user where id = ?";
//创建SQL查询对象
NativeQuery query = session.createSQLQuery(sql);
//封装参数,给第一个?赋值
query.setParameter(1, "1"); query.addEntity(User.class);

  SQLDao.java向数据库发起查询请求

public void find2()
{
Session session = HibernateUtils.getSession();
Transaction beginTransaction = session.beginTransaction(); //开始进行SQL查询
String sql = "select * from user where id = ?";
//创建SQL查询对象
NativeQuery query = session.createSQLQuery(sql);
//封装参数,给第一个?赋值
query.setParameter(1, "1"); query.addEntity(User.class);
//唯一返回值
User user = (User) query.uniqueResult();
System.out.println(user);
//结束SQL查询 beginTransaction.commit();
session.close(); }

package com.Gary.dao;

import java.util.List;

import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.query.NativeQuery; import com.Gary.domain.User;
import com.Gary.utils.HibernateUtils; public class SQLDao { public void find()
{
Session session = HibernateUtils.getSession();
Transaction beginTransaction = session.beginTransaction(); //开始进行SQL查询
String sql = "select * from user"; //创建sql查询对象
NativeQuery query = session.createSQLQuery(sql);
query.addEntity(User.class); //接收list
List<User> list = query.list();
//接收单一返回值 query.uniqyeResult(); //输出第一个成员姓名
System.out.println(list.get(0).getUsername());
//结束SQL查询 beginTransaction.commit();
session.close(); } public void find2()
{
Session session = HibernateUtils.getSession();
Transaction beginTransaction = session.beginTransaction(); //开始进行SQL查询
String sql = "select * from user where id = ?";
//创建SQL查询对象
NativeQuery query = session.createSQLQuery(sql);
//封装参数,给第一个?赋值
query.setParameter(1, "1"); query.addEntity(User.class);
//唯一返回值
User user = (User) query.uniqueResult();
System.out.println(user);
//结束SQL查询 beginTransaction.commit();
session.close(); } }

SQLDao.java

3、SQL分页查询

  //开始进行SQL查询
  String sql = "select * from user limit ? , ?";
  //创建SQL查询对象
  NativeQuery query = session.createSQLQuery(sql);
  //封装参数,给第一个?赋值
  query.setParameter(1, 0);
  //同理
  query.setParameter(2, 2);
  query.addEntity(User.class);
  //唯一返回值
  List<User> list = query.list();

  SQLDao.java向数据库发起查询请求

//SQL分页查询
public void find3()
{
Session session = HibernateUtils.getSession();
Transaction beginTransaction = session.beginTransaction(); //开始进行SQL查询
String sql = "select * from user limit ? , ?";
//创建SQL查询对象
NativeQuery query = session.createSQLQuery(sql);
//封装参数,给第一个?赋值
query.setParameter(1, 0);
//同理
query.setParameter(2, 2);
query.addEntity(User.class);
//唯一返回值
List<User> list = query.list();
System.out.println(list.get(0).getUsername());
//结束SQL查询 beginTransaction.commit();
session.close(); }

package com.Gary.dao;

import java.util.List;

import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.query.NativeQuery; import com.Gary.domain.User;
import com.Gary.utils.HibernateUtils; public class SQLDao { public void find()
{
Session session = HibernateUtils.getSession();
Transaction beginTransaction = session.beginTransaction(); //开始进行SQL查询
String sql = "select * from user"; //创建sql查询对象
NativeQuery query = session.createSQLQuery(sql);
query.addEntity(User.class); //接收list
List<User> list = query.list();
//接收单一返回值 query.uniqyeResult(); //输出第一个成员姓名
System.out.println(list.get(0).getUsername());
//结束SQL查询 beginTransaction.commit();
session.close(); } //SQL条件查询
public void find2()
{
Session session = HibernateUtils.getSession();
Transaction beginTransaction = session.beginTransaction(); //开始进行SQL查询
String sql = "select * from user where id = ?";
//创建SQL查询对象
NativeQuery query = session.createSQLQuery(sql);
//封装参数,给第一个?赋值
query.setParameter(1, "1"); query.addEntity(User.class);
//唯一返回值
User user = (User) query.uniqueResult();
System.out.println(user);
//结束SQL查询 beginTransaction.commit();
session.close(); } //SQL分页查询
public void find3()
{
Session session = HibernateUtils.getSession();
Transaction beginTransaction = session.beginTransaction(); //开始进行SQL查询
String sql = "select * from user limit ? , ?";
//创建SQL查询对象
NativeQuery query = session.createSQLQuery(sql);
//封装参数,给第一个?赋值
query.setParameter(1, 0);
//同理
query.setParameter(2, 2);
query.addEntity(User.class);
//唯一返回值
List<User> list = query.list();
System.out.println(list.get(0).getUsername());
//结束SQL查询 beginTransaction.commit();
session.close(); } }

SQLDao.java

JavaWeb_(Hibernate框架)Hibernate中数据查询语句SQL基本用法的更多相关文章

  1. JavaWeb_(Hibernate框架)Hibernate中数据查询语句Criteria基本用法

    Criteria进行数据查询与HQL和SQL的区别是Criteria完全是面向对象的方式在进行数据查询,将不再看到有sql语句的痕迹,使用Criteria 查询数据包括以下步骤: 1. 通过sessi ...

  2. JavaWeb_(Hibernate框架)Hibernate中数据查询语句HQL基本用法

    HQL(Hibernate Query Language) 是面向对象的查询语言, 它和 SQL 查询语言有些相似. 在 Hibernate 提供的各种检索方式中, HQL 是使用最广的一种检索方式. ...

  3. hibernate框架学习之数据查询(HQL)

    lHibernate共提供5种查询方式 •OID数据查询方式 •HQL数据查询方式 •QBC数据查询方式 •本地SQL查询方式 •OGN数据查询方式 OID数据查询方式 l前提:已经获取到了对象的OI ...

  4. hibernate框架学习之数据查询(本地SQL)

    本地SQL查询方式 lHibernate框架支持使用原生态SQL语句进行操作数据库 l查询对象SQLQuery由Session获取 •SQLQuery sq = s.createSQLQuery(&q ...

  5. hibernate框架学习之数据查询(QBC)

    lQBC(Query By Criteria)是一种Hibernate中使用面向对象的格式进行查询的计数 lQBC查询方式步骤 •获取Session对象 •初始化Criteria对象(使用Sessio ...

  6. hibernate框架学习之数据查询(QBC)helloworld

    package cn.itcast.h3.query.hql; import java.util.List; import org.hibernate.Criteria; import org.hib ...

  7. hibernate框架学习之数据查询(HQL)helloworld

    package cn.itcast.h3.hql; import java.util.List; import org.hibernate.Query; import org.hibernate.Se ...

  8. (数据科学学习手册28)SQL server 2012中的查询语句汇总

    一.简介 数据库管理系统(DBMS)最重要的功能就是提供数据查询,即用户根据实际需求对数据进行筛选,并以特定形式进行显示.在Microsoft SQL Serve 2012 中,可以使用通用的SELE ...

  9. JavaWeb_(Struts2框架)Action中struts-default下result的各种转发类型

    此系列博文基于同一个项目已上传至github 传送门 JavaWeb_(Struts2框架)Struts创建Action的三种方式 传送门 JavaWeb_(Struts2框架)struts.xml核 ...

随机推荐

  1. ajaxFileUpload 被坑记

    用ajaxFileUpload时,MVC的Controller层,不能用JSON去返回数据,因为前台会接不到 返回信息不能用json(),而是要转换一下.     return Content(Jso ...

  2. 使用Seaborn展示多变量两两之间的关系

    数据展示: 1. FacetGrid FacetGrid是一个储存我们想怎样展示信息的东西,如下所示,我们想观察位置中SK和GK的分布. 在这里我们使用map方法把数据填充到图表中 计算类别在某一特征 ...

  3. kalilinux 渗透测试笔记

    声明:本文理论大部分是苑房弘kalilinux渗透测试的内容 第五章:基本工具 克隆网页,把gitbook的书记下载到本地 httrack "http://www.mybatis.org/m ...

  4. LEANGOO用户设置

    转自:https://www.leangoo.com/leangoo_guide/leangoo_guide_kanban_user.html#toggle-id-7 1. 点击屏幕右上角头像或用户名 ...

  5. jmeter连接mysql数据库进行多条语句查询

    前提工作: 1.在jmeter官网下载jmeter包(官网地址:https://jmeter.apache.org/).此外还需下载mysql驱动包,如:mysql-connector-java-5. ...

  6. 2-1 bash基本特性

    bash基本特性 bash基本介绍 bash是shell的一种,shell是计算机与用户交互的主要接口,狭义上的shell指的是CLI(command line interface命令行接口),用户输 ...

  7. 十九:mvc强类型声明

    落下了几节,自己很懒啊, 得找个时间补上... 1. 强类型 是指变量在定义时就已经明确指定了其类型.如: string  s; int x; 2.弱类型 赋值时才确定类型. var s; var x ...

  8. 桌面Ubuntu卡死解决方案

    通常情况下,我们用桌面Ubuntu会遇到卡住的的情况,我们一般会进行强制关机处理,但其实还有另一种操作,不用强制关机. 切换到tty模式,执行命令pkill X;start X;就能重新进入桌面,不用 ...

  9. VS---《在VS2010中 使用C++创建和使用DLL》(003)

    VS---<在VS2010中 使用C++创建和使用DLL>(003) 这里实现一下,之前写好的一个工程(定义一个函数f + main函数调用),转成DLL.调用DLL测试.在两个工程里,分 ...

  10. Codeforces 1175F The Number of Subpermutations

    做法①:RMQ(预处理NLOGN+后续跳跃蜜汁复杂度) 满足题意的区间的条件转换: 1.长度为R-L+1则最大值也为R-L+1 2.区间内的数不重复 当RMQ(L,R)!=R-L+1时 因为已经保证了 ...