01-08-03【Nhibernate (版本3.3.1.4000) 出入江湖】二级缓存:NHibernate自带的HashtableProvider之命名缓存

时间:2014-05-30 16:50:24   收藏:0   阅读:361

http://www.cnblogs.com/lyj/archive/2008/11/28/1343418.html

 

可以在映射文件中定义命名查询,<query>元素提供了很多属性,可以用于缓存结果,

Customer.hbm.xml映射文件中定义名为selectCustomer的查询由于查询所有Customer并启用缓存查询,缓存模式为默认方式(下面有说明)

<query cacheable ="true" cache-mode="normal" name="selectCustomer">

  from Customer

</query>

 

编写一个方法:

bubuko.com,布布扣
[Test]

public void NamedQueryCacheTest()

{

    using (_session)

    {

        Console.WriteLine("--->第一次使用命名查询");

        IList<Customer> customers = _session.GetNamedQuery("selectCustomer")

            .List<Customer>();

    }

    ResetSession();

    using (_session)

    {

        Console.WriteLine("--->第二次使用命名查询");

        IList<Customer> customers = _session.GetNamedQuery("selectCustomer")

            .List<Customer>();

    }

}
bubuko.com,布布扣

 

 NHibernate提供的查询(HQL、条件查询、原生SQL查询)都类似

01-08-03【Nhibernate (版本3.3.1.4000) 出入江湖】二级缓存:NHibernate自带的HashtableProvider之命名缓存,布布扣,bubuko.com

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!