Hibernate N+1 问题及解决办法
问题出现的原因:
Hibernate 中常会用到 set , bag 等集合表示 1 对多的关系,在获取实体的时候就能根据关系将关联的对象或者对象集取出,还可以设定 cacade 进行关联更新和删除。这不得不说 hibernate 的 orm 做得很好,很贴近 oo 的使用习惯了。
但是对数据库访问还是必须考虑性能问题的,在设定了 1 对多这种关系...
分类:
系统相关 时间:
2014-05-23 07:31:17
阅读次数:
289
Java实现的一个词频统计程序,考虑海量数据应该怎么做?MapReduce?!...
分类:
编程语言 时间:
2014-05-22 11:29:46
阅读次数:
361
问题:
如果将P01、P02、P03混合起来。也就是说,有的物品只可以取一次(01背包),有的物品可以取无限次(完全背包),有的物品可以取的次数有一个上限(多重背包)。应该怎么求解呢?
01背包与完全背包的混合:
考虑到在P01和P02中给出的伪代码只有一处不同,故如果只有两类物品:一类物品只能取一次,另一类物品可以取无限次,那么只需在对每个物品应用转移方程时,根据物品的类别...
分类:
其他好文 时间:
2014-05-22 11:24:26
阅读次数:
205
题目:
Problem Description
有很多从磁盘读取数据的需求,包括顺序读取、随机读取。为了提高效率,需要人为安排磁盘读取。然而,在现实中,这种做法很复杂。我们考虑一个相对简单的场景。
磁盘有许多轨道,每个轨道有许多扇区,用于存储数据。当我们想在特定扇区来读取数据时,磁头需要跳转到特定的轨道、具体扇区进行读取操作。为了简单,我们假设磁头可以在某个轨道顺时针或逆时针匀速旋转,旋转一...
分类:
其他好文 时间:
2014-05-22 11:23:11
阅读次数:
283
做联动效果,若是用纯JavaScript来做,往往需要辅助页面保存需要刷新的结果集,然后渲染到原页面。考虑将需要动态刷新的内容自动拼接到前一个下拉框之后,当前一个下拉框onchange后,同级的后面的下拉框全部清除,然后重新拼接刷新的内容。用JQuery实现比较容易,代码以省市联动效果为例实现。
JSP页面代码如下:
生源地:
全部
${pr...
分类:
Web程序 时间:
2014-05-22 09:44:37
阅读次数:
263
C++11新特性
C++11已经推出三年了(2011),编译器GCC4.7、Clang3.1在2012年已经逐渐完善,VS2013也已经支持相关特性,GCC4.8.1支持全部特性。不过新特性似乎在工业界并未得到太多应用,可能出于兼容性和稳定性的考虑吧。
推出的新特性还是相当的丰富,看下面这张图就知道了。我仅仅在这里提一下相对比较容易应用的部分,包括语法上的一些扩展以及改进,lambda表达...
分类:
编程语言 时间:
2014-05-22 09:30:32
阅读次数:
358
题目连接:Codeforces 432E Square Tiling
题目大意:给出一个n?m的矩阵,要求对该矩阵进行上色,用大写字母,但是每次上色的区域必须是正方形,不求相邻的上色区域不能有相同的颜色,求字典序最小的方案(字典序比较,从左至右,从上到下)
解题思路:用贪心的思想去构造矩阵,因为字典序的优先级为左至右,以及上到下,所以我们每次对于一个未上色点x,y,考虑最少要放到的长度...
分类:
其他好文 时间:
2014-05-22 07:53:17
阅读次数:
280
数根
题目描述
我们通过把一个正数N的所有数字求和S来计算这个数的“数根”,如果累加的和为个位数,则这个数S即为N的“数根”;如果是两位和两位以上的数,那么重复这种累加求和的步骤,直到结果是个位数为止。 举例来说,对于正数N=24,将数字2和4相加得到6,因为6是个位数,所以6就是24的“数根”。再考虑N=39,将数字3和9相加得到12,因为12不是个位数,重复上面的计算,将数字1和2相加...
分类:
其他好文 时间:
2014-05-22 06:32:54
阅读次数:
268
http://acm.hdu.edu.cn/showproblem.php?pid=1317
大致题意:有n个房间,每个房间都有对应的能量值(可正可负),现在从1出发要到达n,初始能量为100,问是否能够达到n点,到达n的条件是中间及最后的能量值都要大于0.
思路:若不考虑环,那么求最长路判断是否大于0即可。若存在负环,对求最长路也没影响;但当存在正环时,最长路就不存在了。可用...
分类:
其他好文 时间:
2014-05-20 16:04:43
阅读次数:
256
题目链接:uva 11361 - Investigating Div-Sum Property
题目大意:给出a,b,k,问说在[a,b]这个区间有多少n,满足n整除k,以及n的各个为上的数字之和也整除k。
解题思路:数位dp,dp[i][j][x]表示第i为的时候,n整除k余j,n(以及考虑到的位数)的各个位置上的数字之和整除k余x的情况总数,并且每次要计算上限的临界值。
#inc...
分类:
其他好文 时间:
2014-05-20 15:26:47
阅读次数:
215