Hibernate的HQL的几种连接查询方式

  在我们写sql语句中能够用连接方式来进行查询,当然在hibernte中同样可以,下面总结了几种连接方式:
  现在假设有user和stundent两张表
  1.默认查询的情况:
  from User u where u.name like '%Java%'
  2.迫切左外连接
   from User u left join fetch u.student s where u.name like '%java%'
  3.左外连接
   from User u left join u.student s where u.name like '%java%'
  4.迫切内连接
   from User u inner join fetch u.student where u.name like '%java%'
  5.内连接
   from User u inner join u.student where u.name like '%java%'
  6.右外连接
   from User u right join u.student where u.name like '%java%'
  总结大概就这些吧!对于迫切连接的话,基本区别在于如果是用迫切连接的话当进行连接检索时student集合会立即被初始化,而后者采用的是映射文件配置的延迟检索策略,因此student集合不会被立即初始化.

你可能感兴趣的:(java,sql,Hibernate)