zoukankan      html  css  js  c++  java
  • ssh点滴

    *

    1,hibernate查询语句

    涉及到多表关联时,如果不需要修改同步到数据库中,避免查询出持久对象,可提高效率

    现在有两条HQL查询语句,分别如下:
    from Customer c inner join c.orders o group by c.age;(1)

    select c.ID,c.name,c.age,o.ID,o.order_number,o.customer_ID
    from Customer c inner join c.orders c group by c.age;(2)
    这两条语句使用了HQL语句的内连接查询(我们将在HQL语句的连接查询部分专门讨论),现在我们可以看出这两条查询语句最后所返回的结果是一样的,但是它们其实是有明显区别的,语句(1)检索的结果会返回Customer与Order持久化对象,而且它们会被置于Hibernate的Session缓存之中,并且Session会负责它们在缓存中的唯一性以及与后台数据库数据的同步,只有事务提交后它们才会从缓存中被清除;而语句(2)返回的是关系数据而并非是持久化对象,因此它们不会占用Hibernate的Session缓存,只要在检索之后应用程序不在访问它们,它们所占用的内存就有可能被JVM的垃圾回收器回收,而且Hibernate不会同步对它们的修改。

    参考地址:http://itshu.iteye.com/blog/231050

    2,@within与@target

    @within(M)匹配标注了@M注解的类及子孙类

    @target(M)匹配任意标注了@M的目标类

    注:如果标注了@M的是接口,则接口实现类都不匹配,因为他们是针对目标类,而不是针对运行时的引用类型

    *

    有问题在公众号【清汤袭人】找我,时常冒出各种傻问题,然一通百通,其乐无穷,一起探讨


  • 相关阅读:
    Win10 开启IIS后,访问“localhost”,报错无“C:WindowsMicrosoft.NETFramework64v4.0.30319Temporary ASP.NET Files”写访问权限
    使用pip安装Python扩展包时,如何提高速度?
    Django之路由层
    第一个Django项目
    Django简介
    DIY一个Web框架
    http协议
    Web应用和Web框架
    Python递归的经典案例
    Python修改文件的两种方法
  • 原文地址:https://www.cnblogs.com/qingmaple/p/4169199.html
Copyright © 2011-2022 走看看