`
JavaSam
  • 浏览: 951761 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JSP 自定义标签库实现步骤

阅读更多

java类:

package com.Aaron.test;

import java.util.Properties;

import javax.servlet.http.HttpSession;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspTagException;
import javax.servlet.jsp.tagext.TagSupport;

public class MessageTag extends TagSupport {
 private String key;

 public MessageTag(){
  
 }
 @Override
 public int doEndTag() throws JspException {
  try {
   Properties ps = (Properties)pageContext.getAttribute("ps",pageContext.APPLICATION_SCOPE);
   Properties ps_zh = (Properties)pageContext.getAttribute("ps_zh",pageContext.APPLICATION_SCOPE);
   HttpSession session = pageContext.getSession();
   String language = (String)session.getAttribute("language");
   String message = null;
   if(language != null && language.equals("Chinese")){
    message = ps_zh.getProperty(key);
   }else{
    message = ps.getProperty(key);
   }
   pageContext.getOut().print(message);
  } catch (Exception e) {
   throw new JspTagException(e.getMessage());
  }
  return SKIP_BODY;
 }
 @Override
 public void release() {
  super.release();
 }
 public String getKey() {
  return key;
 }

 public void setKey(String key) {
  this.key = key;
 }
 
}

**************************************************

 

tld标签:

<?xml version="1.0" encoding="UTF-8"?>
<!-- <!DOCTYPE taglib PUBLIC "-//Sun Microsystems,Inc.//DTD JSP Tag Library
1.1//EN" "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd "> -->
<taglib>
    <tlibversion>1.0</tlibversion>
    <jspversion>1.1</jspversion>
    <shortname>mytaglib</shortname>
    <uri>/mytaglib</uri>
    <tag>
        <name> message</name>
        <tagclass>com.Aaron.test.MessageTag </tagclass>
        <bodycontent>empty </bodycontent>
        <info>produce message by key</info>
        <attribute>
            <name>key</name>
            <required>true</required>
        </attribute>
    </tag>
</taglib>

 

******************************************************

web.xml:

 <taglib>
  <taglib-uri>/mytaglib</taglib-uri>
  <taglib-location>/WEB-INF/mytaglib.tld</taglib-location>
 </taglib>

 

***************************************************

 

jsp 页面:

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="ISO-8859-1" %>
< %@taglib uri="/mytaglib" prefix="msg" %>
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd ">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title><msg:message key="hello.hello"/></ title>
    </head>
    <body>
        <%
         String language = request.getParameter("language");
         language  = language == null ? "English" : language;
         session.setAttribute("language",language);
   %>
        <msg:message key="login.user"/>:<input type="text"/>
        <br>
        <msg:message key="login.password"/>:<input type="password"/>
        <br>
        <msg:message key="login.submit"/>:<input type="submit"/>
    </body>
</html>

分享到:
评论

相关推荐

    jsp 自定义标签实例

    本实例将深入探讨如何实现一个简单的JSP自定义标签。 首先,自定义标签的实现主要依赖于两个核心概念:Tag接口和TagSupport类。`Tag`接口定义了自定义标签必须实现的方法,如`doStartTag()`和`doEndTag()`,它们...

    jsp自定义标签库注意事项

    【jsp自定义标签库注意事项】 在Java服务器页面(JSP)开发中,自定义标签库是一种强大的工具,它能够帮助开发者创建可重用的代码片段,提高代码的可读性和可维护性。以下是对JSP自定义标签库的详细解释和使用注意...

    jsp自定义标签库学习

    本教程将深入讲解JSP自定义标签库的学习,包括其原理、配置以及如何创建和使用自定义标签。 **一、JSP自定义标签库的概念** JSP自定义标签库是一组预定义的标签,它们扩展了HTML或XML,提供了一种更加结构化和面向...

    jsp 自定义标签的使用

    本教程将深入探讨JSP自定义标签的使用,同时结合实例介绍分页和下拉框绑定值的封装。 一、JSP自定义标签基础 1. **定义标签库(Tag Library)**:自定义标签首先需要定义一个TLD(Tag Library Descriptor)文件,它...

    jsp自定义标签库问答集锦.

    ### jsp自定义标签库知识点详解 #### 一、什么是jsp自定义标签? 1. **概念**:JSP 自定义标签是一种将复杂的功能封装成一个简单的标签的方式,它允许开发者创建可重用的代码组件,这些组件可以在 JSP 页面中像...

    jsp自定义标签例子,能在Tomcat下直接运行

    创建JSP自定义标签通常包括以下几个步骤: 1. **定义标签库描述符(TLD)** TLD(Tag Library Descriptor)文件是XML格式的,用于定义标签库的元数据,包括标签的名称、属性、返回类型等。TLD文件一般以`.tld`为后缀...

    由浅到深详细讲解JSP自定义标签

    本文将深入讲解JSP自定义标签的相关概念、格式、处理过程以及创建和使用自定义标签库的基本步骤。 1. 基本概念: - **标签**:JSP标签是XML元素,用于简化JSP页面,使其更易读且支持多语言版本。标签名和属性区分...

    掌握jsp自定义标签chm版

    本资料"掌握jsp自定义标签chm版"全面讲解了这一核心概念,旨在帮助开发者深入理解和熟练应用JSP自定义标签。 1. **自定义标签概述** JSP自定义标签是扩展JSP功能的一种方式,允许开发者创建自己的标签库,类似于...

    jsp自定义标签大全.rar

    本资源“jsp自定义标签大全.rar”提供了一套全面的JSP自定义标签的实例和指南,旨在帮助开发者深入理解和应用这一特性。 **JSP自定义标签的基本概念** JSP自定义标签不同于标准动作标签(如&lt;jsp:include&gt;或&lt;jsp:...

    jsp自定义标签报错的问题

    在使用JSP自定义标签时,开发者可能会遇到一些报错问题,这通常涉及到项目结构、类路径设置或自定义标签的编译与打包方式。在本文中,我们将深入探讨这些问题,以及如何解决“JspException”这个特定异常。 首先,...

    JSP自定义标签之日期显示

    本篇将深入探讨“JSP自定义标签之日期显示”,以及如何通过自定义标签来优雅地处理日期格式化和展示。 首先,我们要理解JSP自定义标签的基本概念。自定义标签是JSP的一种扩展,它不是Java内置的标签,而是由开发者...

    jsp自定义标签所需jar包

    "jsp自定义标签所需jar包"主要指的是在Java Web开发中,为了创建和使用自定义JSP标签,我们需要包含特定的库,如"javax.servlet.jsp-api-2.2.1-sources.jar",它提供了Servlet和JSP API的源代码。理解并配置这些依赖...

    jsp页面自定义标签的实现

    2. **定义TLD(Tag Library Descriptor)文件**:TLD文件是JSP自定义标签库的元数据,它定义了标签的名称、属性、行为等。TLD通常放在WEB-INF目录下的tags子目录下,并以`.tld`为扩展名。在TLD文件中,你需要声明你...

    JSP自定义Table标签demo

    总结起来,"JSP自定义Table标签demo"是一个教育性的示例,它演示了如何利用JSP自定义标签的灵活性和强大功能,来创建复杂且可复用的组件,如动态表格。通过学习和理解这个demo,开发者可以提升自己的JSP开发能力,...

    使用JSP自定义标签实现EMP分页

    在这个场景中,"使用JSP自定义标签实现EMP分页"是一个具体的应用实例,旨在提升代码的可读性和可维护性,对比传统的Servlet方法,自定义标签能让分页处理更加简洁。 首先,我们要了解JSP自定义标签的基本结构和工作...

    JSP自定义标签:最近在项目中要用到这种技术,所以自己就写一个经典的HelloWorld实例

    下面将详细阐述JSP自定义标签的组成部分以及实现过程。 首先,**标签体**是自定义标签的主体部分,位于自定义标签的起始和结束标签之间,它可以包含静态内容或者其他的JSP元素,这些内容会在标签处理程序执行时被...

    jsp的自定义标签

    实现JSP自定义标签主要涉及以下几个步骤: 1. **定义标签库(Tag Library)**:一个标签库是一组相关的自定义标签,它们被定义在TLD(Tag Library Descriptor)文件中。TLD文件描述了标签的功能、属性、返回类型等...

    JSP自定义标签详解

    通过以上讲解,我们可以了解到JSP自定义标签的基本原理和使用方式,以及如何创建和管理自定义标签库。这有助于开发者将复杂的功能模块化,提高代码的复用性和可维护性,同时降低了JSP页面的复杂度。在实际开发中,...

    jsp自定义标签

    **JSP自定义标签**是JavaServer Pages (JSP)技术的一个强大特性,它允许开发者扩展JSP标准标签库的功能,创建自己的定制标签库。在JSP中,自定义标签通常用于封装复杂的业务逻辑或者视图展示,以提高代码的可读性...

Global site tag (gtag.js) - Google Analytics