mysql索引页是16k原因:MySQL的varchar索引只支持不超过768个字节。
在数据量太小的情况,建立索引确实有可能比没有建前费时。索引的使用,一般是应用在对大量数据查询中,如果都能数得过来,没必要建。如果你设置的比赛距离就是30米,那汽车发挥不出它的优势,并且表现出来的效果可能还不如人跑的速度快。
索引列:
可以基于数据库表中的单列或多列创建索引。多列索引可以区分其中一列可能有相同值的行。如果经常同时搜索两列或多列或按两列或多列排序时,索引也很有帮助。例如,如果经常在同一查询中为姓和名两列设置判据,那么在这两列上创建多列索引将很有意义。
检查查询的WHERE和JOIN子句。在任一子句中包括的每一列都是索引可以选择的对象。对新索引进行试验以检查它对运行查询性能的影响。考虑已在表上创建的索引数量。最好避免在单个表上有很多索引。检查已在表上创建的索引的定义。最好避免包含共享列的重叠索引。
// 分页page = 0// 默认页
String p = (String) request.getParameter("page")// 当前页
if (p != null &&!"".equals(p)) {
page = Integer.parseInt(p)
}
int size = list.size()// 总数据
int pagesize = 8// 每页显示数量
maxSize = size / pagesize// 最大页数
if (size % pagesize != 0) { // 不能被整除 +1 进一法 1.5分两页 1.5默认变成1
maxSize = maxSize + 1
}
if (page >maxSize) {
page = maxSize
}
if (page <1) {
page = 1
}
int state = (page - 1) * pagesize// 开始
int end = state + pagesize// 结束
if (end >= size) {
end = size
} // 0-1
list = list.subList(state, end)
//页面
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center">
<a href="<%=path%>/PersoninfoAction.action?page=0">首页</a>
<a href="<%=path%>/PersoninfoAction.action?page=${page-1 }">上一页</a>
<c:forEach begin="1" end="${maxSize}" step="1" varStatus="i">
<a href="<%=path%>/PersoninfoAction.action?page=${i.index }">[${i.index
}]</a>
</c:forEach>
<a href="<%=path%>/PersoninfoAction.action?page=${page+1 }">下一页</a>
<c:if test="${maxSize>1}">
>>
</c:if>
<a href="<%=path%>/PersoninfoAction.action?page=${maxSize}">尾页</a>
</td>
</tr>
</table>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)