当前位置: 首页 > news >正文

怎样做instergram网站营销体育彩票网站开发该做哪些步骤

怎样做instergram网站营销,体育彩票网站开发该做哪些步骤,现在流行用什么做网站,提供响应式网站建设9) hibernate.batch_fetch_style: 该配置是hibernate4.2.0新添加的#xff0c;使用这个设置可以配置hibernate在做batch-fetch的时候#xff0c;生成SQL的策略。该配置项的可选值为org.hibernate.loader.BatchFetchStyle这个枚举类型中的可选值。所以#xff0c;目前有三个选… 9) hibernate.batch_fetch_style: 该配置是hibernate4.2.0新添加的使用这个设置可以配置hibernate在做batch-fetch的时候生成SQL的策略。该配置项的可选值为org.hibernate.loader.BatchFetchStyle这个枚举类型中的可选值。所以目前有三个选项LEGACYPADDED和DYNAMIC。下面分别介绍 1LEGACY该批量抓取样式从一个预定义的数组中获取指定的匹配的个数来包装in后面的问号的个数这个预定义的数组由org.hibernate.internal.util.collections.ArrayHelper#getBatchSizes 方法得到的。LEGACY也是该配置项的默认值。举一个简单的例子假如向数据表中插入39条数据          Before public void save() { for (int i 0; i 39; i) { Department d new Department(); d.setName(d i); Employee enew Employee(); e.setName(ei); e.setDept(d); Session session HibernateUtil.getInstance().getSession(); session.beginTransaction(); session.save(d); session.save(e); session.getTransaction().commit(); session.close(); } }     如果要批量获取batch-fetch大小设置为14 Test public void testBatchFetch() { Session session HibernateUtil.getInstance().getSession(); List emps session.createQuery(FROM Employee).list(); for (Employee emp : emps) { System.out.printf(employee:%s belong %s department \r\n, emp.getId(), emp.getDept().getName()); } session.close(); }     得到所有的Employee并遍历访问Employee对应的Department批量大小设置为14   class nameDepartment batch-size14 id nameid generator classnative / /id property namename / set nameemps key columnDEPT_ID/ one-to-many classEmployee/ /set /class    在hibernate.properties文件中配置 hibernate.batch_fetch_style LEGACY 运行测试输出内容简化之后 Hibernate: select employee0_.id as id1_1_, employee0_.name as name2_1_, employee0_.DEPT_ID as DEPT3_1_ from Employee employee0_ Hibernate: select department0_.id as id1_0_0_, department0_.name as name2_0_0_ from Department department0_ where department0_.id in (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) employee:1 到 employee:14 Hibernate: select department0_.id as id1_0_0_, department0_.name as name2_0_0_ from Department department0_ where department0_.id in (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) employee:15 到 employee:28 Hibernate: select department0_.id as id1_0_0_, department0_.name as name2_0_0_ from Department department0_ where department0_.id in (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) employee:28 到 employee:38 Hibernate: select department0_.id as id1_0_0_, department0_.name as name2_0_0_ from Department department0_ where department0_.id? employee:39 可以很清楚的看出在连续使用14批量拿了两次数据之后并没有直接把最后一个批量的数据11个一次性的拿出来而是分别使用了101的方式分了两次拿到数据。原理分析如下 首先根据设置的batch-size14把14作为最大的batch数传给org.hibernate.internal.util.collections.ArrayHelper#getBatchSizes方法得到一个预处理的数组为[14,10,9,8,7,6,5,4,3,2,1]换句话说能够放到IN后面的批量的数字只能是这个数组中的某一个值所以第一次取3914取最大批量14第二次取2514取最大批量14第三次取1114所以只能取第二大的1110取10批量最后一次取取1个。这种策略就很清晰了。 2PADDED该方式和LEGACY一样从一个预定义的数组中获取指定的匹配的个数来包装in后面的问号的个数这个预定义的数组由org.hibernate.internal.util.collections.ArrayHelper#getBatchSizes 方法得到的。和LEGACY不同的是当余下的数量不够的时候该方式总会选择一个大于当前匹配批量的数量。相同的示例我们修改批量样式为 hibernate.batch_fetch_style PADDED 运行测试控制台输出简化之后): Hibernate: select employee0_.id as id1_1_, employee0_.name as name2_1_, employee0_.DEPT_ID as DEPT3_1_ from Employee employee0_ Hibernate: select department0_.id as id1_0_0_, department0_.name as name2_0_0_ from Department department0_ where department0_.id in (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) employee:1 到employee:14 Hibernate: select department0_.id as id1_0_0_, department0_.name as name2_0_0_ from Department department0_ where department0_.id in (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)  employee:15 到employee:28 Hibernate: select department0_.id as id1_0_0_, department0_.name as name2_0_0_ from Department department0_ where department0_.id in (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)  employee:29 到employee:39 可以清楚的看出PADDED和LEGACY的区别PADDED只使用了3次批量就取出了所有的数据取值流程为 首先根据设置的batch-size14把14作为最大的batch数传给org.hibernate.internal.util.collections.ArrayHelper#getBatchSizes方法得到一个预处理的数组为[14,10,9,8,7,6,5,4,3,2,1]换句话说能够放到IN后面的批量的数字只能是这个数组中的某一个值所以第一次取3914取最大批量14第二次取2514取最大批量14第三次取1114但是PADDED会选择比10大1的数量即选中14然后用14把剩下的11个对象一次性的取出来了。 3DYNAMIC有多少数量就直接使用一个批次全部拿出来但是还是不能超过设置的batch-size。所以很好理解如果使用DYNAMIC也会使用141414的方式分3次批量的把数据查询出来。   最后可能有同学觉得使用PADDED更大的batch-size就行了其实也不是这样因为毕竟是批量的去获取关联的数据如果关联的数据过大特别是批量的获取集合数据得到的结果集越大性能也会慢下来所以根据具体的应用需求合理的设置批量SQL样式和批量大小也是需要慎重考虑的。  转载于:https://www.cnblogs.com/james1207/p/3275405.html
http://www.pierceye.com/news/425613/

相关文章:

  • 校园网站建设网个人网站设计论文道客巴巴
  • 网站网站制作价格建站网站建立网站第一步是什么
  • 组织部信息化建设官方网站郑州平面设计公司
  • 可信网站标志网站分析数据
  • 个人求职网站设计惠州建网站
  • 南京网站制作学校南京有名的网站建设公司
  • wordpress 代码页面宁波专业优化网站制作公司
  • 中国建设行业网站第五届中国国际进口博览会召开时间
  • 做网站设计的有些什么职位wordpress h1 h2 h3
  • 广告公司寮步网站建设哪家好怎么样在百度上推广自己的产品
  • 做亚马逊和淘宝网站公司网站建设深圳
  • 济宁建设网站网站改版 合同
  • wordpress 网站费用北京网站建设 知乎
  • 网站设计师绩效网站页面那个图怎么做
  • 帮别人起名 做ppt的网站做一个网站需要服务器吗
  • 高端网站建设公司兴田德润可以不新产品推广策划方案
  • 建设银行如何网站设置密码嵊州市建设银行网站
  • 陕西 网站建设福州mip网站建设
  • 让人做网站 需要准备什么网站建设国内外现状
  • 滨海做网站公司网页设计模板 中文
  • 辽源市网站建设怎么学做电商
  • 做pc端网站行情网站标签化
  • 中国做的很好的食品网站php图片网站源码
  • 做自媒体小视屏哪个网站好邹平网站建设公司
  • 字体样式 网站layui 网站建设模板
  • 沈阳网站设计江苏城乡建设部网站首页
  • 网站手机端生成wordpress如何下载
  • 网站数据抓取怎么做营销型网站开发定制
  • 福州营销型网站建设中国建设工程信息网站
  • 怎么在服务器里面做网站公司网站模板怎么做