科帮网

登录/注册
您现在的位置:论坛 盖世程序员(我猜到了开头 却没有猜到结局) 盖世程序员 > jsp如何自定义标签(带参数传递)
总共48087条微博

动态微博

查看: 1784|回复: 1

jsp如何自定义标签(带参数传递)

[复制链接]
admin    

1244

主题

544

听众

1万

金钱

管理员

  • TA的每日心情

    2021-2-2 11:21
  • 签到天数: 36 天

    [LV.5]常住居民I

    管理员

    跳转到指定楼层
    楼主
    发表于 2014-04-09 13:30:17 |只看该作者 |倒序浏览
    1. package mytag.tag;* A2 G# {# u7 a6 ~+ W

    2. ( `) L0 I0 ]6 m
    3. import java.io.IOException;
      + W7 I& s/ A& T' s# V% R
    4. import java.text.SimpleDateFormat;/ V. |3 o" j9 {; d. S
    5. import java.util.Date;+ z% _4 l* N- e& {1 K" I6 V

    6. 1 b" K, G+ W; ?; N' ]( G
    7. import javax.servlet.jsp.JspException;
      # R3 G0 U4 Z" Q
    8. import javax.servlet.jsp.JspWriter;
      & Z* E( J  T: |; b
    9. import javax.servlet.jsp.PageContext;+ b* j2 v: U$ o7 F) W5 V
    10. import javax.servlet.jsp.tagext.SimpleTagSupport;) z  J# ]" T4 Z7 M% n5 p8 Q
    11. ) h+ p7 R9 r6 n  l
    12. public class DateTag extends SimpleTagSupport{
      5 l1 L/ g1 I8 v8 t+ C
    13.     private String quesId;# U+ I% a- _) W5 [# T2 Y
    14. @Override
      0 L+ p, h& @( q' j
    15. public void doTag() throws JspException, IOException {: P' y6 Y# b  @+ [- B; k
    16.       String message = "";' ~) F' P, L8 p$ I4 M
    17.   if(quesId.equals("0")){
      ; ^) V1 f- Z1 g" k+ J  [: Q; c
    18.    message = "你好";
      * P3 z5 o+ v7 e: r! ~. O9 v
    19.   }else{
      5 M% v$ m3 D* k5 b
    20.    message = "hello";
      " R3 \( }' A, i0 _
    21.   }) |1 K$ ?# h4 B8 N" w5 b5 |5 |
    22.   out.println(message);
      # j8 N  a" p0 p+ n/ e
    23. }
      6 G5 I9 v& a! ?8 p9 @9 I3 P( T8 i. F
    24. public String getQuesId() {8 |, }0 i7 s  \& Z7 d: M
    25.   return quesId;
      " c, S3 ?) j" r, }6 D5 {$ {5 V
    26. }
      1 ?/ r8 x! y# Y4 H+ }! F
    27. public void setQuesId(String quesId) {+ V$ ]% C) c5 v
    28.   this.quesId = quesId;
      3 x! y- p/ C" ~' G% N4 r+ C4 ]1 \* B
    29. }- S% W" B, c3 {6 Q
    30. }
    复制代码
    标签文件:7 p9 P* `- ^$ F- V  r* [9 m
    1. <?xml version="1.0" encoding="UTF-8" ?>/ I; O6 @; Q9 [; g% A) \8 a
    2. <taglib xmlns="http://java.sun.com/xml/ns/j2ee"0 ^6 p* n( z" F2 X& n
    3.         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"1 [4 V4 C5 I' ]8 G' ~
    4.         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
      ( h: N; a$ v; ~! z
    5.         version="2.0">. T+ t( D" W. C" M1 v! c2 L
    6.         <tlib-version>1.2</tlib-version>
      ) @: g4 X& k; h4 n, ^
    7.         <short-name>c1</short-name>4 z7 a- n2 F# A9 v
    8.         <uri>http://www.52itstyle.top/mytag</uri>
      . e1 ~5 V% R- c2 E/ u) P
    9.   <tag>
      . U! [6 G- F  h( x5 f  P! k9 o+ t, y
    10.                   <name>date</name>: ^0 ~7 d/ e2 k+ ]
    11.               <tag-class>tag.myTag</tag-class>
      6 }9 x( @* T" X% B
    12.               <body-content>empty</body-content>) [1 b1 r! B# U$ H/ {
    13.               <attribute>
      9 n* z/ \8 s  T8 i& y
    14.             <name>quesId</name>
      7 r8 z" m, l' N5 \" t( G- R
    15.             <required>true</required>
      * Y1 n' A2 u7 U" b, w% K
    16.             <rtexprvalue>true</rtexprvalue>
      % l( [, A: b  q4 u% S: }
    17.         </attribute>
      * R" Y  S2 l" X4 ~
    18.   </tag>
      + J! K% ^3 r' ^/ Y, q7 i
    19. </taglib>
    复制代码
    0 P8 P; A6 W% f- ]! Q0 M; _9 D
    把以上文件命名mytag.tld 放到WEB-INF 下面 即可
    1 i: W2 b) |: L* \/ N7 M===============================0 S: ?6 F; y$ n; [$ k
    页面加入:- ^* Y) i0 w: y: Q( G9 ]' E
    1. <%@ page language="java" import="java.util.*" pageEncoding="utf-8" isELIgnored="false"%>
      2 S: V: }, v, _4 j- `" C' e
    2. <%@taglib uri="/WEB-INF/mytag.tld" prefix="c1"%>
      * z2 P% K& w/ f, h  z1 y
    3. <c1:date quesId="1"/>
    复制代码

    , @% `8 u7 @6 T4 B" N
    0 D- S8 G3 G0 b4 N. o

    6 f+ M0 a1 S! v7 S6 h

    科帮网 1、本主题所有言论和图片纯属会员个人意见,与本社区立场无关
    2、本站所有主题由该帖子作者发表,该帖子作者与科帮网享有帖子相关版权
    3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和科帮网的同意
    4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
    5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
    6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
    7、科帮网管理员和版主有权不事先通知发贴者而删除本文


    JAVA爱好者①群:JAVA爱好者① JAVA爱好者②群:JAVA爱好者② JAVA爱好者③ : JAVA爱好者③

    96

    主题

    7

    听众

    406

    金钱

    四袋长老

    该用户从未签到

    沙发
    发表于 2014-04-21 20:45:59 |只看该作者
    报空指针 是怎么回事?
    回复

    使用道具 举报

    快速回复
    您需要登录后才可以回帖 登录 | 立即注册

       

    关闭

    站长推荐上一条 /1 下一条

    发布主题 快速回复 返回列表 联系我们 官方QQ群 科帮网手机客户端
    快速回复 返回顶部 返回列表