1、查询所有的学生信息:

(1)查询结果中,一条信息放入到一个数组中,从list集合中取出数组,并对数组进行遍历。

public class GeneratorTest {
public static void testSel() {
Session session = HibernateUtils.openSession();
Transaction transaction = session.beginTransaction();
String sql="Select * from Student";
SQLQuery sqlQuery=session.createSQLQuery(sql);
List<Object[]>list= sqlQuery.list();
for(Object[] objects:list){
System.out.println(Arrays.toString(objects));
}
System.out.println(list);
transaction.commit();
session.close();
}

(2)直接封装到学生对象中,将对象存储到list集合:

public static void testSel() {
Session session = HibernateUtils.openSession();
Transaction transaction = session.beginTransaction();
String sql="Select * from Student";
SQLQuery sqlQuery=session.createSQLQuery(sql);
sqlQuery.addEntity(Student.class);
List<Student>list= sqlQuery.list();
System.out.println(list);
transaction.commit();
session.close();
}

2、占位符的使用:

    public static void testSel() {
Session session = HibernateUtils.openSession();
Transaction transaction = session.beginTransaction();
String sql="Select * from Student where sex=?";
SQLQuery sqlQuery=session.createSQLQuery(sql);
sqlQuery.setParameter(,"女");
sqlQuery.addEntity(Student.class);
List<Student>list= sqlQuery.list();
System.out.println(list);
transaction.commit();
session.close();
}

3、分页查询:

public static void testSel() {
Session session = HibernateUtils.openSession();
Transaction transaction = session.beginTransaction();
String sql="Select * from Student limit ?,?";
SQLQuery sqlQuery=session.createSQLQuery(sql);
sqlQuery.setParameter(,);
sqlQuery.setParameter(,);
sqlQuery.addEntity(Student.class);
List<Student>list= sqlQuery.list();
System.out.println(list);
transaction.commit();
session.close();
}

Hibernate的批量查询——原生sql查询的更多相关文章

  1. Hibernate 函数 ,子查询 和原生SQL查询

    一. 函数 聚合函数:count(),avg(),sum(),min(),max() 例:(1)查询Dept表中的所有的记录条数. String hql=" select count(*) ...

  2. Hibernate原生SQL查询

    最近在做一个较为复杂的查询,hibernate基本的查询不能满足,只好使用其提供的原生sql查询.参考网上的一些资料,做一些总结. 对原生SQL查询执行的控制是通过SQLQuery接口进行的,通过执行 ...

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

    Hibernate原生SQL查询多表关联,SQL语句要注意的问题 @for&ever 2009-9-4 系统环境: MySQL5.1 Hibernate3.3 有如下的假定: 实体类 Ques ...

  4. hibernate使用原生SQL查询返回结果集的处理

    今天没事的时候,看到公司框架里有一个用原生SQL写的函数,说实在以前自己也干过这事,但好久都没有用,都忘得差不多了,现在基本都是用的hql语句来查询结果.hibernate中使用createSQLQu ...

  5. Hibernate SQLQuery 原生SQL 查询及返回结果集处理-1

    第一篇:官方文档的处理方法,摘自官方 在迁移原先用JDBC/SQL实现的系统,难免需要采用hibernat native sql支持. 1.使用SQLQuery hibernate对原生SQL查询执行 ...

  6. Hibernate 的原生 SQL 查询

    Hibernate除了支持HQL查询外,还支持原生SQL查询.         对原生SQL查询执行的控制是通过SQLQuery接口进行的,通过执行Session.createSQLQuery()获取 ...

  7. 使用hibernate原生sql查询,结果集全为1的问题解决

    问题如下: String sqlTest ="select summary,summaryno from F_Summary"; List<Map<Object, Ob ...

  8. hibernate使用原生SQL查询

    以下是Demo测试Hibernate 原生SQL查询: import java.util.Iterator; import java.util.List; import java.util.Map; ...

  9. hibernate 5原生sql查询测试学习代码

    基本查询 import java.util.List; import org.hibernate.SQLQuery; import org.hibernate.Session; import org. ...

随机推荐

  1. Github 上优秀的 Java 项目推荐

    1.JavaGuide 地址:Snailclimb/JavaGuide [Java学习+面试指南] 一份涵盖大部分Java程序员所需要掌握的核心知识. 2.DoraemonKit 地址:didi/Do ...

  2. TCP/UDP的网络底层实现

    1.1Socket的使用背景 当我们在使用微信.玩游戏.收发邮件,以及用web浏览器上网时,底层的实现是TCP/UDP的协议,封装socket实现网络通信功能. 了解了网络通信的底层实现原理,在出现s ...

  3. Java的表达式和运算符

    一.算术运算符 运算符 + - * / % 说明 加 减 乘 除 取模(余数) 例子 1+2 5-3 20*5 6/4 30%9 结果 3 2 100 1 3 int x = 10; int y = ...

  4. JavaScript入门(一)

    JavaScript入门篇—开篇 Document对象 1Document对象表示当前页面,HTML在浏览器中是以DOM形式表示为树形结构.Document是DOM树的根节点.(因此需要查找DOM树中 ...

  5. Google Chrome 浏览器JS无法更新解决办法

    JS无法更新原因: 浏览器为了加载快,默认是按照自定规则更新缓存,非实时更新. 我们在开发的时候,JS变动很快,需要即时让浏览器加载最新文件,也就是禁用浏览器缓存 (1)使用F12进入开发者模式,找到 ...

  6. layout_gravity 属性和 gravity属性的区别

    安卓中  LinearLayout有两个非常相似的属性: android:gravity与android:layout_gravity. 区别在于: android:gravity 属性是对该view ...

  7. 换个语言学一下 Golang (10)——并行计算

    如果说Go有什么让人一见钟情的特性,那大概就是并行计算了吧. 做个题目 如果我们列出10以下所有能够被3或者5整除的自然数,那么我们得到的是3,5,6和9.这四个数的和是23.那么请计算1000以下( ...

  8. Django:RestFramework之-------分页

    9.分页操作 分页,看第n页,每页显示n条数据 分页,在n个位置,向后查看n条数据. 加密分页,上一页和下一页 1.基于PageNumberPagination分页 1.路由: url(r'^(?P& ...

  9. JavaScript设计模式与开发实践随笔(二)

    多态 多态的实际含义是:同一操作作用于不同的对象上面,可以产生不同的解释和不同的执行结果.换句话说,给不同的对象发送同一个消息的时候,这些对象会根据这个消息分别给出不同的反馈 var makeSoun ...

  10. vector中的push_back函数的意思是什么

    push_back   就是在vector的末尾插入一个元素, vector 中的erase()函数,从指定容器删除指定位置的元素或者某段范围内的元素,删除之后,返回值也是一个迭代器,指向最后一个删除 ...