`

tag开发实例源代码

阅读更多
tag开发实例源代码

已经测试过


参考:

http://java.sun.com/products/jsp/tutorial/TagLibrariesTOC.html



/**
 * 2009-5-6
 * zhenjw
 */
package zhenjw;

import java.io.IOException;

import javax.servlet.jsp.JspException;

//tag 关键是要继承这个类
import javax.servlet.jsp.tagext.TagSupport;

/**
 * @author zhenjw
 *
 */
public class TurnPageTag extends TagSupport {
	
	private int totalRow;
	private int pageSize;
	private int pageNo;
	private String onclick;
	
	private String FirstPage="首页";
	private String PrePage="上一页";
	private String NextPage="下一页";
	private String LastPage="尾页";
	/**
	 * @return the onclick
	 */
	public String getOnclick() {
		return onclick;
	}
	/**
	 * @param onclick the onclick to set
	 */
	public void setOnclick(String onclick) {
		this.onclick = onclick;
	}
	/**
	 * @return the pageNo
	 */
	public int getPageNo() {
		return pageNo;
	}
	/**
	 * @param pageNo the pageNo to set
	 */
	public void setPageNo(int pageNo) {
		this.pageNo = pageNo;
	}
	/**
	 * @return the pageSize
	 */
	public int getPageSize() {
		return pageSize;
	}
	/**
	 * @param pageSize the pageSize to set
	 */
	public void setPageSize(int pageSize) {
		this.pageSize = pageSize;
	}
	/**
	 * @return the totalRow
	 */
	public int getTotalRow() {
		return totalRow;
	}
	/**
	 * @param totalRow the totalRow to set
	 */
	public void setTotalRow(int totalRow) {
		this.totalRow = totalRow;
	}
	/* (non-Javadoc)
	 * @see javax.servlet.jsp.tagext.TagSupport#doStartTag()
	 */
	public int doStartTag() throws JspException {
		// TODO Auto-generated method stub
		
		StringBuilder strB=new StringBuilder();
		
		//首页 上一页
		if(pageNo>1)
		
			strB.append("<a href='#' onclick='").append(onclick).append("(1);return false;'>").append(this.FirstPage).append("</a>").append("&nbsp;&nbsp;&nbsp;&nbsp;")
			
				.append("<a href='#' onclick='").append(onclick).append("(").append(pageNo-1).append(");return false;'>").append(this.PrePage).append("</a>");
		
		else
			strB.append(this.FirstPage).append("&nbsp;&nbsp;&nbsp;&nbsp;").append(this.PrePage);
		
		strB.append("&nbsp;&nbsp;&nbsp;&nbsp;");
		
		
		// 
		
		int totalPage=this.getTotalPage();
		
		//下一页 尾页
		if(pageNo<totalPage)
			
			strB.append("<a href='#' onclick='").append(onclick).append("(").append(pageNo+1).append(");return false;'>")
				.append(this.NextPage).append("</a>")
				.append("&nbsp;&nbsp;&nbsp;&nbsp;")
				.append("<a href='#' onclick='").append(onclick).append("(").append(totalPage).append(");return false;'>")
				.append(this.LastPage).append("</a>");
			
		else
			
			strB.append(this.NextPage)
				.append("&nbsp;&nbsp;&nbsp;&nbsp;")
				.append(this.LastPage);
		
		strB.append("&nbsp;&nbsp;&nbsp;&nbsp;");
		 
		try {
			
			this.pageContext.getOut().write(strB.toString());
			
		} catch (IOException e) {
			// TODO Auto-generated catch block
			
			e.printStackTrace();
			
			throw new JspException(e);
			
		}
		
		return super.doStartTag();
	}
	
	private int getTotalPage()
	{
		return (this.totalRow+this.pageSize-1)/this.pageSize;
		
	}
	
	
	

}




JSP文件
<%@ taglib uri="/tlt" prefix="tlt" %>

web.xml文件

<servlet>
<servlet-mapping>
   <servlet-name>dispatcher</servlet-name>
   <url-pattern>/example/*</url-pattern>
</servlet-mapping>
   <servlet-name>dispatcher</servlet-name>
   <servlet-class>Dispatcher</servlet-class>
</servlet>
<taglib>
   <taglib-uri>/tlt</taglib-uri> 
   <taglib-location>/WEB-INF/taglib.tld</taglib-location> 
</taglib>


0
0
分享到:
评论

相关推荐

    Jsp实例源代码

    通过分析这些实例源代码,开发者可以学习到如何在实际项目中有效利用JSP进行开发。 【标签】"Jsp 实例源代码"进一步强调了这是一个关于JSP实践操作的学习资料,涵盖了实际开发中的关键元素。这些实例可能包括了JSP...

    15个JSP项目实例技术源代码

    总之,"15个JSP项目实例技术源代码"是一个丰富的学习资源,无论是初学者还是有经验的开发者,都能从中受益,提高自己的JSP开发技能。通过分析和实践这些实例,可以更好地理解和应用JSP技术,为构建高效、稳定的Web...

    《J2EE专业项目实例开发》源代码

    《J2EE专业项目实例开发》源代码是一个深入学习J2EE技术的宝贵资源,它包含了一系列实际项目案例,旨在帮助开发者提升在企业级Java应用开发中的技能。J2EE,全称为Java 2 Platform, Enterprise Edition,是Oracle...

    Jstl编程实例源代码

    **JSTL(JavaServer Pages Standard Tag Library)**是Java Web开发中的一种标准标签库,...通过深入研究"Jstl编程实例源代码",你可以更好地掌握JSTL的使用技巧,提高开发效率,为构建高质量的Web应用打下坚实的基础。

    JSP+Oracle网络应用系统开发与实例源代码

    《JSP+Oracle网络应用系统开发与实例》一书配套的源代码主要涵盖了使用Java Server Pages(JSP)技术和Oracle数据库进行Web应用开发的核心技术与实践案例。在深入理解这些知识点之前,首先需要对JSP和Oracle有基本的...

    Java Web开发范例源代码

    Java Web开发范例源代码是学习和理解Java Web技术的重要资源,它包含了各种实际应用场景的实例,可以帮助开发者深入掌握相关技术。在这个压缩包中,我们可以找到一系列与Java Web相关的源代码,这对于初学者和有经验...

    JSP应用开发详解第三版源代码(整理版)B

    《JSP应用开发详解第三版》是一本深入探讨JSP技术的专业书籍,其源代码提供了丰富的实例,帮助读者更好地理解和实践JSP编程。 源代码包“JSP应用开发详解第三版源代码2”包含了一系列与JSP相关的项目和示例,这些...

    一个jsp实例源代码

    在提供的标题"一个jsp实例源代码"中,我们可以推测这是一个用于教学或示例目的的JSP项目。这样的实例通常包含了一个或多个JSP文件,这些文件展示了如何在实际开发中使用JSP语法和特性。初学者可以通过学习这些源代码...

    《JSP案例开发》源代码

    2. **JSP动作标签**:例如`&lt;jsp:include&gt;`、`&lt;jsp:forward&gt;`、`&lt;jsp:useBean&gt;`等,这些是用于处理页面请求、管理JavaBean的常用JSP动作标签,源代码可能会包含它们的实例。 3. **Servlet与JSP的关系**:JSP最终会被...

    JSP核心技术和电子商务应用实例源代码分析

    《JSP核心技术和电子商务应用实例源代码分析》这个压缩包文件包含了对JSP技术深入探讨以及实际电子商务应用场景的源码解析。JSP(JavaServer Pages)是Java平台上的一个重要技术,用于开发动态web应用程序。本资源...

    JSP案例开发集锦源代码.rar

    《JSP案例开发集锦源代码》是一个针对JavaServer Pages(JSP)技术的实践教程,其中包含了丰富的实例代码,旨在帮助开发者深入理解和掌握JSP的使用方法。JSP是Java平台上的动态网页开发技术,它允许开发者在HTML或者...

    JSP案例开发-源代码

    【JSP案例开发-源代码】是一份涵盖了JSP(JavaServer Pages)技术实际应用的资源集合,旨在帮助开发者深入理解和实践JSP编程。JSP是Java平台上的一个动态网页技术,它允许开发者将HTML、CSS和Java代码混合编写,以...

    treeview的应用实例源代码,viusal studio C#

    在.NET Framework中,TreeView控件是Visual Studio C#开发中常用的一种组件,它提供了一种图形化的方式来展示层次结构数据。这个控件可以用于显示文件系统、数据库结构、组织架构等,用户可以通过展开和折叠节点来...

    JSP核心技术和电子商务应用实例源代码分析.rar

    通过《JSP核心技术和电子商务应用实例源代码分析》这个压缩包,开发者可以学习到如何利用JSP进行电子商务网站的开发,理解JSP的核心概念,并通过实例代码加深对这些技术的应用。这些源代码实例对于初学者来说是宝贵...

    JSP网络开发逐步深入源代码

    本资源“JSP网络开发逐步深入源代码”旨在帮助初学者逐步掌握JSP的核心概念和技术,通过实际的源代码实现,让学习过程更加直观和实用。** **1. JSP基础** JSP是Java平台的一部分,它的核心理念是将静态内容(如HTML...

    调试跟踪Android Framework源代码 实例

    本实例将引导你探索如何有效地跟踪和调试Android Framework的源代码,助你在Android学习旅程中更进一步。 首先,调试Android Framework源代码需要具备一定的基础,包括Java编程语言、Android应用程序开发、以及对...

    JSP开发web教学资源包 内含课件 开发工具和环境 实例和源代码

    **实例和源代码** 是学习JSP的关键部分,它们提供了实际操作的机会,使理论知识得以实践。例子可能涵盖从简单的"Hello, World!"程序到复杂的数据访问和用户交互。源代码分析有助于理解如何在实际项目中运用JSP技术,...

Global site tag (gtag.js) - Google Analytics