<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page import="com.demo.hibernate.dao.productDAO"%>
<%@ page import="com.demo.hibernate.beans.Products"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<%
int dipage=1;
String pages=request.getParameter("dipage");
if(pages==null){
pages="1";
}
dipage=Integer.parseInt(pages);
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'my.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
<script language="JavaScript">
function sendValue(){
window.opener.document.getElementById("text1").value=document.getElementById("hiddenValue").value;
window.close();
}
function setValue(str){
document.getElementById("hiddenValue").value=str;
document.getElementById("temp").value=str;
}
function test(){
alert("ddxkj");
}
function refreshMain(){
window.opener.location.reload();
}
</script>
</head>
<body onkeyup="">
<form>
<input type="button" value="发送" onClick="sendValue();">
<INPUT type="hidden" name="hiddenValue" id="hiddenValue" />
<INPUT type="text" name="temp" id="temp"/>
</form>
<%
int countRecord=0; //记录总数
int countPageRecord=20; //每页20笔记录
int countPage=0; //总页数
int beginRecord=0; //每页记录开始的索引(如:第二页开始索引是21)
int endRecord=0; //每页记录结束的索引(如:第二页结束索引是40)
String tmp=null;
List list=null;
productDAO dao=new productDAO();
list=dao.productList();
countRecord=list.size(); //计算出记录的总数
//计算总页数
if(countRecord==0){ //当记录总数为0时,页数为0
countPage=0;
out.print("countRecord==0");
}else{
if(countPageRecord>=countRecord){
countPage=1;
}else{
if(countRecord/countPageRecord==0){
countPage=countRecord/countPageRecord;
}else{
countPage=countRecord/countPageRecord+1;
}
}
}
//countPage=4;
// out.print("countRecord="+countRecord+"<br>");
//out.print("countPageRecord="+countPageRecord+"<br>");
//out.print("countPage="+countPage+"<br>");
// out.print("countRecord/countPageRecord="+countRecord/countPageRecord+"<br>");
out.print("<table border='1'>");
out.print("<tr>");
out.print("<td>是否选择</td>");
out.print("<td>产品编号</td>");
out.print("<td>产品名称</td>");
out.print("<td>产品单位</td>");
out.print("</tr>");
if(countPage==0){
//countPage=0时,首页、上一页、下一页、末页都为txt格式
//out.print("countPage==0");
out.print("<tr><td colspan=4>共"+countRecord+"条记录,共"+countPage+"页,当前第"+countPage+"页,每页"+countPageRecord+"条记录,首页,上一页,下一页,末页");
out.print("<input type='text' id='index' maxlength='4' size='2'>");
out.print("</td></tr>");
}else{
//out.print("countPage!=0");
if(countPage==1){ // 如果只有一页则不考虑分页
//out.print("如果只有一页则不考虑分页");
for(int i=0;i<list.size();i++){
Products product=(Products)list.get(i);
tmp="ProductId="+product.getProductId()+"&"+"ProductName="+product.getProductName()+"&"+"QuantityPerUnit="+product.getQuantityPerUnit();
out.print("<tr>");
//out.print("<td><input type='radio' id='productID' name='productID' onClick='setValue('"+tmp+"');'></td>");
out.print("<td><a href=one.jsp?"+tmp+" onClick='window.close();'>确定</td>");
out.print("<td>"+product.getProductId()+"</td>");
out.print("<td>"+product.getProductName()+"</td>");
out.print("<td>"+product.getQuantityPerUnit()+"</td>");
out.print("<td>"+tmp+"</td>");
out.print("</tr>");
}
//countPage=0时,首页、上一页、下一页、末页都为txt格式
out.print("<tr><td colspan=4>共"+countRecord+"条记录,共"+countPage+"页,当前第"+countPage+"页,每页"+countPageRecord+"条记录,首页,上一页,下一页,末页");
out.print("<input type='text' id='index' maxlength='4' size='2'>");
out.print("</td></tr>");
}else{ //如果页数多于一页开始考虑如何分页
//out.print("如果页数多于一页开始考虑如何分页");
beginRecord=(dipage-1)*countPageRecord+1;
if(dipage!=countPage){
endRecord=dipage*countPageRecord;
}else{
endRecord=countRecord;
}
for(int i=beginRecord;i<=endRecord;i++){
Products product=(Products)list.get(i-1); //i减1是因为List接口的索引是从0开始
out.print("<tr>");
//out.print("<td><input type='radio' id='productID' name='productID' onClick='setValue('"+tmp+"');'></td>");
out.print("<td><a href=one.jsp?"+tmp+" onClick='window.close();refreshMain();'>确定</td>");
out.print("<td>"+product.getProductId()+"</td>");
out.print("<td>"+product.getProductName()+"</td>");
out.print("<td>"+product.getQuantityPerUnit()+"</td>");
out.print("</tr>");
}
if(dipage==1){
//当页数多于1页,且当前面第1页时,首页、上一页都为txt格式,下一页、末页都为link格式
out.print("<tr><td colspan=4>共"+countRecord+"条记录,共"+countPage+"页,当前第"+countPage+"页,每页"+countPageRecord+"条记录,首页,上一页,"+
"<a href=my.jsp?dipage="+(dipage+1)+">下一页</a>,<a href=my.jsp?dipage="+countPage+">末页</a>");
out.print("<input type='text' id='index' maxlength='4' size='2'>");
out.print("</td></tr>");
}else if(dipage>1 && dipage<countPage){
//当页数多于1页,且当前面第1页时,首页、上一页、下一页、末页都为link格式
out.print("<tr><td colspan=4>共"+countRecord+"条记录,共"+countPage+"页,当前第"+countPage+"页,每页"+countPageRecord+"条记录,"+
"<a href=c?dipage=1>首页</a>,<a href=my.jsp?dipage="+(dipage-1)+">上一页</a>,"+
"<a href=my.jsp?dipage="+(dipage+1)+">下一页</a>,<a href=my.jsp?dipage="+countPage+">末页</a>");
out.print("<input type='text' id='index' maxlength='4' size='2' onChange=alert('ddxkj');>");
out.print("</td></tr>");
}else if(dipage==countPage){
//当页数多于1页,且当前面第1页时,首页、上一页都为link格式,下一页�