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

eclipse 简单网站开发搜索引擎优化服务

eclipse 简单网站开发,搜索引擎优化服务,常州外贸网站建设,优化网站关键词怎么做一、问题起因:线上某个列表的查询效率低下,需要定位下具体原因 二、定位过程: 1、因为问题出现之前有增加一个需求,查询会对表中某个json字段进行过滤,所以第一时间怀疑是数据量大了以后这种json内容筛选导致的&…
一、问题起因:线上某个列表的查询效率低下,需要定位下具体原因
二、定位过程:

1、因为问题出现之前有增加一个需求,查询会对表中某个json字段进行过滤,所以第一时间怀疑是数据量大了以后这种json内容筛选导致的,但测试后发现其影响关系不大,效率依然低。

2、转而怀疑是列表查询关联了一张子表导致,分析查看log日志后,发现一个之前没注意到的情况,一次查询竟然打印了很多条查询sql日志,这才看到Hibernate关联查询时,是先查询主表,拿到关联主键后,对每个子表单独请求一次数据库的,导致查询效率极其低下。

三、解决方案:

对于级联字段上添加注解,@BatchSize(size = n),其中n代表列表的返回条数。

 一、@BatchSize 的实际行为

1、动态批量查询

如果主表返回 10条数据,Hibernate 会生成类似以下SQL一次性加载这10条对应的子表数据: 

SELECT * FROM sub_table WHERE main_id IN (1, 2, 3, ..., 10);

 如果主表返回 15条数据size=20),则同样执行一次 IN (1, 2, ..., 15) 查询。

2、不足size时的处理

  • size 只是 批量加载的上限值,并非必须凑满。

  • Hibernate 会根据实际需要加载的主表ID数量动态生成SQL,不会补空值或报错。

 

http://www.dtcms.com/wzjs/491549.html

相关文章:

  • 自己做时时彩网站如何提高网站的自然排名
  • 天河网站建设信科网络佛山做网站建设
  • html5建设摄影网站意义网络营销典型案例
  • 新手学做网站 iso ed2k廊坊百度推广电话
  • 个人微信公众号怎么做微网站百度排名竞价
  • 网站怎么生成二维码代运营套餐价格表
  • 建设一个微商的网站优化公司组织架构
  • 微信卖水果链接网站怎么做代运营是什么意思
  • 网站服务器设置柳市网站制作
  • 有那些专门做外贸的网站呀中小型企业网站设计与开发
  • 大赛网站开发需求天津网站建设
  • 网站建设 十年今日最新新闻摘抄
  • 分享几款做淘客网站的服务器seo网站系统
  • 网站版权模板怎么建网站免费的
  • 用vs2012做网站首页百度怎么发自己的小广告
  • 怎么备份网站数据库免费seo教程分享
  • 上海网站设计建设公网络营销方式
  • 北京网站开发网站建设咨询软文客
  • 资溪县建设局网站seo搜索引擎优化招聘
  • wordpress建m域名网站安徽网络优化公司排名
  • 做网站3年3万站长工具名称查网站
  • 网站建设和实现西安seo关键词排名优化
  • 网站的用途今日热点新闻大事件
  • 找网站做编程培训机构
  • 宁波网站建设流程图今天刚刚发生的新闻事故
  • 抚松做网站企业网上的推广
  • 有什么免费ppt模板网站seo的中文名是什么
  • asp简单购物网站源码品牌公关
  • wordpress更新记录百度seo最成功的优化
  • 软件公司网站设计与制作谷歌浏览器直接打开