Hibernate多表查询数据转JSON格式

本文介绍了如何使用Hibernate进行多表查询,通过创建映射类和使用构造函数,将查询结果直接转换为JSON格式。通过示例展示了从学生和教师表中查询数据,最终将数据转换为符合JSON格式的对象列表。
摘要由CSDN通过智能技术生成

Hibernate的查询方式具有面向对象的思想,在查询的时候,都是动过gei(id)的方式查询一条数据,然后Hibernate自动设置进去到POJO类对象,返回一个代理类给我们。

学生类:

 

 

[java] view plain copy

  1. public class Student {  
  2.   
  3.     private int sId;//学生的id  
  4.     private int tId;//教师的id  
  5.     private String sName;//学生的姓名  
  6.     private String sSex;//学生的性别  
  7.   
  8.     //省略get,set方法,无参构造方法,有参构造方法  
  9. }  

教师类:

[java] view plain copy

  1. public class Teacher {  
  2.       
  3.     private int tId;//教师的id  
  4.     private String tName;//教师的姓名  
  5.     //同样,省略get,set方法,无参构造方法,有参构造方法  
  6. }   

这里有学生和教师两个类,同时映射数据库中学生表和教师表,如果我们想要拿到这两个表的数据,那么我们可以

hql=“select s.sId,s.sName,s.sSex,t.tId,t.tName from Student s,Teacher t where s.tId=t.tId ”,用Query类执行这句hql语句,调用query.list()得到一个list集合,注意这个list集合里存放的都是Object[]。

[java] view plain copy

  1. String hql="select s.sId,s.sName,s.sSex,t.tId,t.tName from Student s,Teacher t where s.tId=t.tId";  
  2. Query q=session.createQuery(hql);  
  3. List<Object> list=q.list();  
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值