本文展示三种在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. Java lesson09Homework

    1.   上转型对象的定义是什么?阐述自己对上转型对象的理解,用文字描述. 上转型:父类声明,子类实例化 叫做上转型. (自己的理解)上转型对象可以利用父类中的全员变量和方法,当子类进行全员变量隐藏或 ...

  2. async/await 的引用

    static async void Start() { string s = "ass"; Console.WriteLine(getMemory(s)+"Hello W ...

  3. QT QListWidget去掉滚动条

    1.去掉滚动条 设置样式  包含背景色等更改 setStyleSheet("QListWidget{color:gray;font-size:12px;background:#FAFAFD; ...

  4. IOI2020只因训队作业胡做

    w a r n i n g ! 意 识 流 警 告 !!1 不想一个个发了,干脆直接发个合集得了qwq 感觉这辈子都做不完了\(Q\omega Q\) CF516D 写过题解了 CF505E 写过题解 ...

  5. 利用css伪类选择器hover控制两个元素属性

    示例1: <html> <body> <style> #a:hover {color : #FFFF00;} #a:hover > #b:first-chil ...

  6. Windows下解决系统端口被VM虚拟机占用问题

    一)问题背景 安装VM虚拟机后,经常会遇到启动其他程序时出现端口被占用的情况,其中以80端口被占用最为常见. 二)解决思路 解除或更改被占用端口号,但是更改端口号时,除非对系统的端口占用情况非常熟悉, ...

  7. LED点阵显示

    /*********************************************************** 8*8LED点阵---显示数字实验 实现现象:下载程序后点阵上显示数字0 注意 ...

  8. 宝塔 + 阿里云ECS + MySql + Navicat 远程连接数据库

    宝塔 + 阿里云ECS + MySql + Navicat 远程连接 1. root登录: 2.  grant all privileges on *.* to root@'%' identified ...

  9. navicat for mysql 下载安装教程

    Navicat是一套快速.可靠并价格相当便宜的数据库管理工具,专为简化数据库的管理及降低系统管理成本而设.它的设计符合数据库管理员.开发人员及中小企业的需要.Navicat 是以直觉化的图形用户界面而 ...

  10. Window10下Python3.7的wordcloud库的安装与基本使用

    1.进入Python官网→点击Pypl→搜索“wordcloud”.如下图所示: 2.使用cmd安装,具体操作如下: 使用 pip list 查看是否安装成功