期刊问答网 论文发表 期刊发表 期刊问答
  • 回答数

    2

  • 浏览数

    167

ankoJSY
首页 > 期刊问答网 > 期刊问答 > 论文的检索策略有哪些内容

2个回答 默认排序1
  • 默认排序
  • 按时间排序

cui626307

已采纳
类级别检索策略有立即检索和延迟检索,默认的检索策略是立即检索。在Hibernate映射文件中,通过在上配置lazy属性来确定检索策略。对于Session的检索方式,类级别检索策略仅适用于load方法;也就说,对于get、qurey检索,持久化对象都会被立即加载而不管lazy是false还是一般来说,我们检索对象就是要访问它,因此立即检索是通常的选择。由于load方法在检索不到对象时会抛出异常(立即检索的情况下),因此我个人并不建议使用load检索;而由于中的lazy属性还影响到多对一及一对一的检索策略,因此使用load方法就更没必要了。 关联级别检索策略有立即检索、延迟检索和迫切左外连接检索。对于关联级别检索,又可分为一对多和多对多、多对一和一对一两种情况讨论。 一对多和多对多关联关系一般使用配置。有lazy和outer-join属性,它们的不同取值绝对了检索策略。 1)立即检索:这是一对多默认的检索策略,此时lazy=false,outer-join=尽管这是默认的检索策略,但如果关联的集合是无用的,那么就不要使用这种检索方式。 2)延迟检索:此时lazy=true,outer-join=false(outer-join=true是无意义的),这是优先考虑的检索方式。 3)迫切左外连接检索:此时 lazy=false,outer-join=true,这种检索策略只适用于依靠id检索方式(load、get),而不适用于query的集合检索(它会采用立即检索策略)。相比于立即检索,这种检索策略减少了一条sql语句,但在Hibernate中,只能有一个配置成 outer-join= 多对一和一对一检索策略一般使用配置。中需要配置的属性是 outer-join,同时还需要配置one端关联的的lazy属性(配置的可不是中的lazy哦),它们的组合后的检索策略如下: 1) outer-join=auto:这是默认值,如果lazy=true为延迟检索,如果lazy=false为迫切左外连接检索。 2) outer-join=true,无关于lazy,都为迫切左外连接检索。 3) outer-join=false,如果lazy=true为延迟检索,否则为立即检索。 可以看到,在默认的情况下(outer-join=auto,lazy=false),对关联的one端对象Hibernate采用的迫切左外连接检索。依我看,很多情况下,我们并不需要加载one端关联的对象(很可能我们需要的仅仅是关联对象的id);另外,如果关联对象也采用了迫切左外连接检索,就会出现select语句中有多个外连接表,如果个数多的话会影响检索性能,这也是为什么Hibernate通过ax_fetch_depth属性来控制外连接的深度。对于迫切左外连接检索,query的集合检索并不适用,它会采用立即检索策略。 对于检索策略,需要根据实际情况进行选择。对于立即检索和延迟检索,它们的优点在于select语句简单(每张表一条语句)、查询速度快,缺点在于关联表时需要多条select语句,增加了访问数据库的频率。因此在选择即检索和延迟检索时,可以考虑使用批量检索策略来减少select语句的数量(配置batch-size属性)。对于切左外连接检索,优点在于select较少,但缺点是select语句的复杂度提高,多表之间的关联会是很耗时的操作。另外,配置文件是死的,但程序是活的,可以根据需要在程序里显示的指定检索策略(可能经常需要在程序中显示指定迫切左外连接检索)。为了清楚检索策略的配置效果如何,可以配置show_sql属性查看程序运行时Hibernate执行的sql语句。

论文的检索策略有哪些内容

84 评论(10)

luyinsheng

回答 你好呀,很高兴为你进行解答~打字需要一些时间哦,请稍等 文献检索的方法:直接法、顺查法、倒查法、抽查法、追溯法、循环法。 1、直接法又称常用法,是指直接利用检索系统(工具)检索文献信息的方法。它又分为顺查法、倒查法和抽查法。 2、顺查法顺查法是指按照时间的顺序,由远及近地利用检索系统进行文献信息检索的方法。这种方法能收集到某一课题的系统文献,它适用于较大课题的文献检索。例如,已知某课题的起始年代,需要了解其发展的全过程,就可以用顺查法从最初的年代开始查找。 3、倒查法倒查法是由近及远,从新到旧,逆着时间的顺序利用检索工具进行文献检索的方法。使用这种方法可以最快地获得最新资料。 4、抽查法抽查法是指针对项目的特点,选择有关该项目的文献信息最可能出现或最多出现的时间段,利用检索工具进行重点检索的方法。 5、追溯法是指不利用一般的检索系统,而是利用文献后面所列的参考文献,逐一追查原文(被引用文献),然后再从这些原文后所列的参考文献目录逐一扩大文献信息范围,一环扣一环地追查下去的方法。它可以像滚雪球一样,依据文献间的引用关系,获得更好的检索结果。 6、循环法又称分段法或综合法。它是分期分交替使用直接法和追溯法,以期取长补短,相互配合,获得更好的检索结果。 更多6条 
222 评论(15)

相关问答