jsp自定义标签

自定义Jsp分页标签一


花了一上午简单研究了下自定义标签。就弄了个自定义的分页标签。代码没有怎么仔细优化。先贴上来,:)

1,标签的实现类NumenTag.java

 

import  java.util.ArrayList;
import  java.util.HashMap;
import  java.util.List;
import  java.util.Map;

import  javax.servlet.jsp.JspException;
import  javax.servlet.jsp.JspWriter;
import  javax.servlet.jsp.tagext.TagSupport;

/**
 * 自定义的分页标签
 * 
 * 
@author 马万林
 * 
 
*/

public   class  NumenTag  extends  TagSupport  {

    
private String url = null;

    
private Result result;

    
private String page = null;

    
private String[] p;

    
private Map kv = new HashMap();

    
private List key = null;

    
/**
     * 分离参数
     * 
@param params
     
*/

    
public void setParams(String params) {
        key 
= new ArrayList();
        p 
= params.split(";");
        
for (int i = 0; p.length>1&&< p.length; i++{
            kv.put(p[i].split(
":")[0], p[i].split(":")[1]);
            key.add(p[i].split(
":")[0]);
        }

    }


    
/**
     * 分页的结果
     * 
@param result
     
*/

    
public void setResult(String result) {
        
this.result = (Result) pageContext.getRequest().getAttribute("result");
        
this.page = (String) pageContext.getRequest().getAttribute("page");
    }


    
public void setUrl(String url) {
        
this.url = url;
    }


    
public int doStartTag() throws JspException {
        StringBuffer sb 
= null;
        
if (result != null && result.getContent() != null
                
&& result.getContent().size() > 0{
            sb 
= new StringBuffer("分页: ");
            
if (result.getPage().getHasPrePage()){
                sb.append(
"<a href='").append(url);
                
if (url.indexOf("?"== -1)
                    sb.append(
"?page=1");
                
else
                    sb.append(
"&page=1");
                linkParams(sb);
                sb.append(
"'>").append("首页").append("</a>").append(" | ");
                sb.append(
"<a href='").append(url);
                
if (url.indexOf("?"== -1)
                    sb.append(
"?page=").append(
                            result.getPage().getPreviousPage());
                
else
                    sb.append(
"&page=").append(
                            result.getPage().getPreviousPage());
                linkParams(sb);
                sb.append(
"'>").append("上页").append("</a>").append(" | ");
            }

            
if (result.getPage().getHasNextPage()) {
                sb.append(
"<a href='").append(url);
                
if (url.indexOf("?"== -1)
                    sb.append(
"?page=").append(result.getPage().getNextPage());
                
else
                    sb.append(
"&page=").append(result.getPage().getNextPage());
                linkParams(sb);
                sb.append(
"'>").append("下页").append("</a>").append(" | ");
                sb.append(
"<a href='").append(url);
                
if (url.indexOf("?"== -1)
                    sb.append(
"?page=").append(result.getPage().getTotalPage());
                
else
                    sb.append(
"&page=").append(result.getPage().getTotalPage());
                linkParams(sb);
                sb.append(
"'>").append("尾页").append("</a>");
            }

            sb
                    .append(
" 跳转到:<select name='goToPage' οnchange='javascript:goPage(this.value)'>");
            
int s = result.getPage().getTotalCount();
            
for (int i = 1; i <= s; i++{
                sb.append(
"<option value=").append(i);
                
if (Integer.parseInt(page) == i)
                    sb.append(
" selected");
                sb.append(
">第").append(i).append("页</option>");
            }

            sb.append(
"</select>");
            sb.append(
"<script language=javascript>");
            sb.append(
"function goPage(page){").append("window.location='")
                    .append(url);
            
if (url.indexOf("?"== -1)
                sb.append(
"?page='+").append("page");
            
else
                sb.append(
"&page='+").append("page");
            sb.append(
"+'");
            linkParams(sb);
            sb.append(
"';");
            sb.append(
"}");
            sb.append(
"</script>");
        }

        
try {
            
if (sb != null{
                JspWriter out 
= pageContext.getOut();
                out.print(sb);
            }

        }
 catch (Exception e) {
            
throw new JspException(e);
        }

        
return EVAL_PAGE;
    }

    
    
/**
     * 链接参数处理
     * 
@param sb
     
*/

    
private void linkParams(StringBuffer sb) {
        
for (int i = 0; i < key.size(); i++{
            sb.append(
"&").append(key.get(i)).append("=").append(
                    kv.get(key.get(i)));
        }

    }


}

 

2,标签定义文件numentag.tld

 

<? xml  version="1.0"  encoding="utf-8"   ?>
 
<! DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN" "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd" >
< taglib >
    
< tlib-version > 1.0 </ tlib-version >
    
< jsp-version > 1.2 </ jsp-version >
    
< short-name > numen </ short-name >
    
<!-- OutputTag -->
    
< tag >
        
< name > out </ name >
        
< tag-class > cn.cityyouth.util.NumenTag </ tag-class >
        
< body-content > empty </ body-content >
        
< attribute >
            
< name > url </ name >
            
< required > true </ required >
            
< rtexprvalue > true </ rtexprvalue >
        
</ attribute >
        
< attribute >
            
< name > result </ name >
            
< required > true </ required >
            
< rtexprvalue > true </ rtexprvalue >
        
</ attribute >
        
< attribute >
            
< name > params </ name >
            
< required > false </ required >
            
< rtexprvalue > true </ rtexprvalue >
        
</ attribute >
    
</ tag >
</ taglib >

 

3.js

< %@ page  contentType ="text/html; charset=utf-8" % >
< %@ include  file ="/common/taglibs.jsp" % >
< %@ taglib   uri ="/WEB-INF/numentag.tld"   prefix ="n" % >
< html >
< head >
</ head >
< body >
< table >
< tr >< td >
< n:out  url ="test.do"  result ="result"  params ="${type}" />
</ td ></ tr >
</ table >
</ body >
</ html >


自定义JSP标签二

  1. package com.ajax;  
  2.   
  3. import java.io.IOException;  
  4. import java.util.Enumeration;  
  5.   
  6. import javax.servlet.http.HttpServletRequest;  
  7. import javax.servlet.jsp.JspException;  
  8. import javax.servlet.jsp.tagext.TagSupport;  
  9.   
  10. public class Pager extends TagSupport{  
  11.      private String url;         //请求URI     
  12.         private int pageSize = 10;  //每页要显示的记录数     
  13.        private int pageNo = 1;     //当前页号     
  14.        private int recordCount;    //总记录数     
  15.        
  16.        @SuppressWarnings("unchecked")     
  17.        public int doStartTag() throws JspException {     
  18.            int pageCount = (recordCount + pageSize - 1) / pageSize;  //计算总页数     
  19.                  
  20.            //拼写要输出到页面的HTML文本     
  21.             StringBuilder sb = new StringBuilder();     
  22.                  
  23.                 
  24.             sb.append("<style type=\"text/css\">");     
  25.             sb.append(".pagination {padding: 5px;float:right;font-size:12px;}");     
  26.            sb.append(".pagination a, .pagination a:link, .pagination a:visited {padding:2px 5px;margin:2px;border:1px solid #aaaadd;text-decoration:none;color:#006699;}");     
  27.            sb.append(".pagination a:hover, .pagination a:active {border: 1px solid #ff0000;color: #000;text-decoration: none;}");     
  28.              sb.append(".pagination span.current {padding: 2px 5px;margin: 2px;border: 1px solid #ff0000;font-weight: bold;background-color: #ff0000;color: #FFF;}");     
  29.              sb.append(".pagination span.disabled {padding: 2px 5px;margin: 2px;border: 1px solid #eee; color: #ddd;}");     
  30.             sb.append("</style>\r\n");     
  31.             sb.append("<div class=\"pagination\">\r\n");     
  32.             if(recordCount == 0){     
  33.                sb.append("<strong>没有可显示的项目</strong>\r\n");     
  34.              }else{     
  35.                //页号越界处理     
  36.                 if(pageNo > pageCount){      pageNo = pageCount; }     
  37.                if(pageNo < 1){      pageNo = 1; }     
  38.                       
  39.                  sb.append("<form method=\"post\" action=\"").append(this.url)     
  40.                      .append("\" name=\"qPagerForm\">\r\n");     
  41.                      
  42.                 //获取请求中的所有参数     
  43.                 HttpServletRequest request = (HttpServletRequest) pageContext     
  44.                         .getRequest();     
  45.                  Enumeration<String> enumeration = request.getParameterNames();     
  46.                 String name = null;  //参数名     
  47.                 String value = null//参数值     
  48.                  //把请求中的所有参数当作隐藏表单域     
  49.                  while (enumeration.hasMoreElements()) {     
  50.                      name =  enumeration.nextElement();     
  51.                      value = request.getParameter(name);     
  52.                     // 去除页号     
  53.                      if (name.equals("pageNo")) {     
  54.                         if (null != value && !"".equals(value)) {     
  55.                              pageNo = Integer.parseInt(value);     
  56.                        }     
  57.                         continue;     
  58.                     }     
  59.                     sb.append("<input type=\"hidden\" name=\"")     
  60.                        .append(name)     
  61.                       .append("\" value=\"")     
  62.                        .append(value)     
  63.                       .append("\"/>\r\n");     
  64.                  }     
  65.              
  66.                 // 把当前页号设置成请求参数     
  67.                  sb.append("<input type=\"hidden\" name=\"").append("pageNo")     
  68.                      .append("\" value=\"").append(pageNo).append("\"/>\r\n");     
  69.                      
  70.                // 输出统计数据     
  71.                sb.append(" 共<strong>").append(recordCount)     
  72.                     .append("</strong>项")     
  73.                      .append(",<strong>")     
  74.                      .append(pageCount)     
  75.                    .append("</strong>页: \r\n");     
  76.                      
  77.                  //上一页处理     
  78.                  if (pageNo == 1) {     
  79.                      sb.append("<span class=\"disabled\">« 上一页")     
  80.                         .append("</span>\r\n");     
  81.                  } else {     
  82.                     sb.append("<a href=\"javascript:turnOverPage(")     
  83.                       .append((pageNo - 1))     
  84.                      .append(")\">« 上一页</a>\r\n");     
  85.                 }     
  86.                     
  87.                 //如果前面页数过多,显示"..."     
  88.                  int start = 1;      
  89.                 if(this.pageNo > 4){     
  90.                    start = this.pageNo - 1;     
  91.                    sb.append("<a href=\"javascript:turnOverPage(1)\">1</a>\r\n");     
  92.                   sb.append("<a href=\"javascript:turnOverPage(2)\">2</a>\r\n");     
  93.                     sb.append("…\r\n");     
  94.                }     
  95.                 //显示当前页附近的页     
  96.                 int end = this.pageNo + 1;     
  97.                if(end > pageCount){     
  98.                    end = pageCount;     
  99.                  }     
  100.                for(int i = start; i <= end; i++){     
  101.                     if(pageNo == i){   //当前页号不需要超链接     
  102.                        sb.append("<span class=\"current\">")     
  103.                             .append(i)     
  104.                             .append("</span>\r\n");     
  105.                      }else{     
  106.                         sb.append("<a href=\"javascript:turnOverPage(")     
  107.                            .append(i)     
  108.                             .append(")\">")     
  109.                              .append(i)     
  110.                             .append("</a>\r\n");     
  111.                     }     
  112.                  }     
  113.                  //如果后面页数过多,显示"..."     
  114.                if(end < pageCount - 2){     
  115.                    sb.append("…\r\n");     
  116.                }     
  117.                  if(end < pageCount - 1){     
  118.                      sb.append("<a href=\"javascript:turnOverPage(")     
  119.                    .append(pageCount - 1)     
  120.                    .append(")\">")     
  121.                      .append(pageCount - 1)     
  122.                     .append("</a>\r\n");     
  123.                 }     
  124.                 if(end < pageCount){     
  125.                     sb.append("<a href=\"javascript:turnOverPage(")     
  126.                .append(pageCount)     
  127.                    .append(")\">")     
  128.                     .append(pageCount)     
  129.                     .append("</a>\r\n");      
  130.             }     
  131.                      
  132.          //下一页处理     
  133.                if (pageNo == pageCount) {     
  134.                   sb.append("<span class=\"disabled\">下一页 »")     
  135.                         .append("</span>\r\n");     
  136.                } else {     
  137.                   sb.append("<a href=\"javascript:turnOverPage(")     
  138.                        .append((pageNo + 1))     
  139.                       .append(")\">下一页 »</a>\r\n");     
  140.                  }     
  141.                 sb.append("</form>\r\n");     
  142.             
  143.                // 生成提交表单的JS     
  144.                sb.append("<script language=\"javascript\">\r\n");     
  145.                 sb.append("  function turnOverPage(no){\r\n");     
  146.               sb.append("    if(no>").append(pageCount).append("){");     
  147.                sb.append("      no=").append(pageCount).append(";}\r\n");     
  148.                sb.append("    if(no<1){no=1;}\r\n");     
  149.                sb.append("    document.qPagerForm.pageNo.value=no;\r\n");     
  150.                sb.append("    document.qPagerForm.submit();\r\n");     
  151.                sb.append("  }\r\n");     
  152.                 sb.append("</script>\r\n");     
  153.            }     
  154.            sb.append("</div>\r\n");     
  155.                 
  156.              //把生成的HTML输出到响应中     
  157.           try {     
  158.                pageContext.getOut().println(sb.toString());     
  159.             } catch (IOException e) {     
  160.                 throw new JspException(e);     
  161.           }     
  162.            return SKIP_BODY;  //本标签主体为空,所以直接跳过主体     
  163.         }     
  164.        
  165.        public void setUrl(String url) {     
  166.              this.url = url;     
  167.          }     
  168.         public void setPageSize(int pageSize) {     
  169.              this.pageSize = pageSize;     
  170.          }     
  171.          public void setPageNo(int pageNo) {     
  172.              this.pageNo = pageNo;     
  173.         }     
  174.         public void setRecordCount(int recordCount) {     
  175.              this.recordCount = recordCount;     
  176.         }     
  177.      }  

[html]  view plain copy
  1. package com.ajax;  
  2. import java.sql.*;  
  3. import java.util.ArrayList;  
  4. import java.util.List;  
  5.   
  6.   
  7. public class Personbean {  
  8. private Connection ct=null;  
  9. private PreparedStatement ps=null;  
  10. private ResultSet rs=null;  
  11. public List all(int pageNo,int pageSize){  
  12.     List list=new ArrayList();  
  13.     try{  
  14.         ct=Conn.getinstance();  
  15.         ps=ct.prepareStatement("select top "+pageSize+"* from Person  where pid not in (select top "+pageSize*(pageNo-1)+" pid from Person ) ");  
  16.         rs=ps.executeQuery();  
  17.         Person p=null;  
  18.         while(rs.next()){  
  19.             p=new Person();  
  20.             p.setPid(rs.getInt(1));  
  21.             p.setMname(rs.getString(2));  
  22.             list.add(p);  
  23.         }  
  24.     }catch(Exception e){  
  25.         e.printStackTrace();  
  26.     }finally{  
  27.         DBclose.close(ct, ps, rs);  
  28.     }  
  29.     return list;  
  30. }  
  31. public int Count() {  
  32.     int rowCount=0;  
  33.     int pageSize=10;  
  34.     int pageCount=0;  
  35.     try{  
  36.         ct=Conn.getinstance();  
  37.         ps=ct.prepareStatement("select count(*) from Person ");  
  38.         rs=ps.executeQuery();  
  39.         if(rs.next()){  
  40.             rowCount=rs.getInt(1);  
  41.         }  
  42.         if(rowCount%pageSize==0){  
  43.             pageCount=rowCount/pageSize;  
  44.         }else{  
  45.             pageCount=rowCount/pageSize+1;  
  46.         }  
  47.     }catch(Exception e){  
  48.         e.printStackTrace();  
  49.           
  50.     }finally{  
  51.         DBclose.close(ct, ps, rs);  
  52.     }  
  53.     return pageCount;  
  54. }  
  55. public int reCount(){  
  56.     int recordCount=0;  
  57.     try{  
  58.         ct=Conn.getinstance();  
  59.     ps=ct.prepareStatement("select count(*) from Person");  
  60.     rs=ps.executeQuery();  
  61. if(rs.next()){  
  62.           
  63.         recordCount=rs.getInt(1);  
  64.     }  
  65.           
  66.     }catch(Exception e){  
  67.         e.printStackTrace();  
  68.           
  69.     }finally{  
  70.         DBclose.close(ct, ps, rs);  
  71.     }  
  72.     return recordCount;  
  73. }  
  74. }  

[java]  view plain copy
  1. package com.ajax2;  
  2.   
  3. import java.io.IOException;  
  4. import java.io.PrintWriter;  
  5. import java.util.ArrayList;  
  6. import java.util.List;  
  7.   
  8. import javax.servlet.ServletException;  
  9. import javax.servlet.http.HttpServlet;  
  10. import javax.servlet.http.HttpServletRequest;  
  11. import javax.servlet.http.HttpServletResponse;  
  12.   
  13. import com.ajax.Personbean;  
  14.   
  15. public class Temp extends HttpServlet {  
  16.   
  17.     /** 
  18.      * The doGet method of the servlet. <br> 
  19.      * 
  20.      * This method is called when a form has its tag value method equals to get. 
  21.      *  
  22.      * @param request the request send by the client to the server 
  23.      * @param response the response send by the server to the client 
  24.      * @throws ServletException if an error occurred 
  25.      * @throws IOException if an error occurred 
  26.      */  
  27.     public void doGet(HttpServletRequest request, HttpServletResponse response)  
  28.             throws ServletException, IOException {  
  29.   
  30.           
  31.         request.setCharacterEncoding("utf-8");response.setCharacterEncoding("utf-8");  
  32.         PrintWriter out = response.getWriter();  
  33.         Personbean pb=new Personbean();  
  34.         int pageNo=Integer.parseInt((String)request.getParameter("pageNo"));  
  35.         System.out.print(pageNo);  
  36.     int pageSize=10;  
  37.   
  38.         ArrayList list=(ArrayList)pb.all(pageNo, pageSize);  
  39.         int pageCount=pb.Count();  
  40.         int recordCount=pb.reCount();  
  41.         request.setAttribute("pageCount", pageCount+"");  
  42.         request.setAttribute("recordCount", recordCount+"");  
  43.         request.setAttribute("pageNo", pageNo+"");  
  44.         request.setAttribute("pageSize", pageSize+"");  
  45.         request.setAttribute("list", list);  
  46.         request.getRequestDispatcher("/First.jsp").forward(request, response);  
  47.               
  48.     }  
  49.   
  50.       
  51.     public void doPost(HttpServletRequest request, HttpServletResponse response)  
  52.             throws ServletException, IOException {  
  53.   
  54.         this.doGet(request, response);  
  55.     }  
  56.   
  57. }  

[html]  view plain copy
  1. <?xml version="1.0" encoding="UTF-8"?>    
  2. <taglib version="2.0" xmlns="http://java.sun.com/xml/ns/j2ee"    
  3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    
  4.    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee web-jsptaglibrary_2_0.xsd">    
  5.     <tlib-version>0.9</tlib-version>    
  6.   <!--标签头-->    
  7.    <short-name>w</short-name>    
  8.     <!--将来在页面用taglib引用时的uri属性,这部分的名字可以随便写,只要是符合HTTP网址形式的 -->    
  9.    <uri>http://javacrazyer.iteye.com/tags/pager</uri>    
  10.         
  11.     <!-- 自定义标签的描述信息 -->    
  12.     <tag>    
  13.        <!-- 标签名 -->    
  14.        <name>pager</name>    
  15.         <!-- 对应的标签处理类全限定名 -->    
  16.        <tag-class>com.ajax.Pager</tag-class>    
  17.         <!-- 标签主体的类型 -->    
  18.        <body-content>empty</body-content>    
  19.        <!-- 当前页号属性的描述信息 -->    
  20.        <attribute>    
  21.            <!-- 属性名 -->    
  22.             <name>pageNo</name>    
  23.            <!-- 该属性是否为必要的 -->    
  24.           <required>true</required>    
  25.             <!-- 属性值是否可以在JSP运行时期动态产生 -->    
  26.             <rtexprvalue>true</rtexprvalue>    
  27.            <!-- 属性的数据类型 -->    
  28.             <type>int</type>    
  29.        </attribute>    
  30.        <!-- 总记录数属性的描述信息 -->    
  31.         <attribute>    
  32.             <name>recordCount</name>    
  33.            <required>true</required>    
  34.             <rtexprvalue>true</rtexprvalue>    
  35.             <type>int</type>    
  36.         </attribute>    
  37.         <!-- 总页数属性的描述信息 -->    
  38.        <attribute>    
  39.             <name>pageSize</name>    
  40.             <required>true</required>    
  41.            <rtexprvalue>true</rtexprvalue>    
  42.             <type>int</type>    
  43.         </attribute>    
  44.         <!-- 分页标签要跳转的URI属性的描述信息 -->    
  45.         <attribute>    
  46.             <name>url</name>    
  47.             <required>true</required>    
  48.             <rtexprvalue>true</rtexprvalue>    
  49.             <type>java.lang.String</type>    
  50.        </attribute>    
  51.     </tag>    
  52. </taglib>    

 

[html]  view plain copy
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <web-app version="2.5"   
  3.     xmlns="http://java.sun.com/xml/ns/javaee"   
  4.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   
  5.     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   
  6.     http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  
  7.   <servlet>  
  8.     <description>This is the description of my J2EE component</description>  
  9.     <display-name>This is the display name of my J2EE component</display-name>  
  10.     <servlet-name>Show</servlet-name>  
  11.     <servlet-class>com.ajax2.Show</servlet-class>  
  12.   </servlet>  
  13.   <servlet>  
  14.     <description>This is the description of my J2EE component</description>  
  15.     <display-name>This is the display name of my J2EE component</display-name>  
  16.     <servlet-name>temp</servlet-name>  
  17.     <servlet-class>com.ajax2.Temp</servlet-class>  
  18.   </servlet>  
  19.   
  20.   
  21.   <servlet-mapping>  
  22.     <servlet-name>Show</servlet-name>  
  23.     <url-pattern>/test</url-pattern>  
  24.   </servlet-mapping>  
  25.   <servlet-mapping>  
  26.     <servlet-name>temp</servlet-name>  
  27.     <url-pattern>/go</url-pattern>  
  28.   </servlet-mapping>  
  29.   <welcome-file-list>  
  30.     <welcome-file>index.jsp</welcome-file>  
  31.   </welcome-file-list>  
  32.   <jsp-config>        <taglib>            <taglib-uri>/tld/lhp2012</taglib-uri>            <taglib-location>/WEB-INF/pager.tld</taglib-location>        </taglib>    </jsp-config>  
  33.  <filter>  
  34.   <filter-name>encode</filter-name>   
  35.   <filter-class>com.ajax.Chin</filter-class>  
  36.    
  37.     
  38.    
  39.   </filter>  
  40.  <filter-mapping>  
  41.   <filter-name>encode</filter-name>   
  42.   <url-pattern>/*</url-pattern>   
  43.   </filter-mapping>  
  44. </web-app>  


 

[html]  view plain copy
  1. <%@ page language="java" import="java.util.*,com.ajax.*" pageEncoding="utf-8"%>  
  2. <%@taglib uri="http://javacrazyer.iteye.com/tags/pager" prefix="q"%>     
  3.   
  4. <%  
  5. String path = request.getContextPath();  
  6. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  
  7. String a=(String)request.getAttribute("pageCount");  
  8. int pageCount=Integer.parseInt(a);  
  9. ArrayList list=(ArrayList)request.getAttribute("list");  
  10. int pageNo=Integer.parseInt((String)request.getAttribute("pageNo"));  
  11. int pageSize=Integer.parseInt((String)request.getAttribute("pageSize"));  
  12. int recordCount=Integer.parseInt((String)request.getAttribute("recordCount"));  
  13. %>  
  14.   
  15. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
  16. <html>  
  17.   <head>  
  18.     
  19.   
  20.     <base href="<%=basePath%>">  
  21.       
  22.     <title>My JSP 'First.jsp' starting page</title>  
  23.       
  24.     <meta http-equiv="pragma" content="no-cache" charset="utf-8">  
  25.     <meta http-equiv="cache-control" content="no-cache">  
  26.     <meta http-equiv="expires" content="0">      
  27.     <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">  
  28.     <meta http-equiv="description" content="This is my page">  
  29.       
  30.       
  31.       
  32.   
  33.   </head>  
  34.     
  35.   <body>  
  36.  <table>  
  37.     
  38.  <tr><th>编号</th><th>姓名</th></tr>  
  39.  <%for(int i=0;i<list.size();i++){  
  40.  Person p=(Person)list.get(i);  
  41.  %>  
  42. <tr><td><%=p.getPid() %></td><td><%=p.getMname() %></td></tr>  
  43.  <%} %>  
  44.   
  45.  </table>  
  46.   <q:pager pageSize="${pageSize}" pageNo="${pageNo}" url="go" recordCount="${recordCount}"/>     
  47.    
  48.   </body>  
  49. </html>  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值