如何写一个从数据库直接得到数据的自定义标签,然后在jsp页面用标签把数据显示出来。

如果有人写过类似的,可不可以自定义标签实现类的代码贴出来啊,万分感谢T-T自定义标签直接使用方法取出数据库中的某一个表的数据,页面使用此标签可以,把所有数据分页显示。说说... 如果有人写过类似的,可不可以自定义标签实现类的代码贴出来啊,万分感谢T-T

自定义标签直接使用方法取出数据库中的某一个表的数据,页面使用此标签可以,把所有数据分页显示。说说给个思路也可以的,谢啦
展开
 我来答
_Echo_gw
2009-01-20 · TA获得超过104个赞
知道小有建树答主
回答量:254
采纳率:0%
帮助的人:112万
展开全部
1,你要先在WEB-INF下建一个tld文件,比如说myTags.tld内容如下
<!DOCTYPE taglib
PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
"http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">

<taglib xmlns="http://java.sun.com/JSP/TagLibraryDescriptor">
<tlib-version>1.0</tlib-version>
<jsp-version>1.2</jsp-version>
<short-name>Simple Tags</short-name>
<tag>
<name>showNumForBbsTopic</name>
<tag-class>com.movie.mytag.ShowNumForBbsTopic</tag-class>
<body-content>jsp</body-content>
</tag>
</taglib>
2,然后按你配置中写的路径在com.movie.mytag包下建一个ShowNumForBbsTopic类,内容如下:
package com.movie.mytag;

import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.BodyContent;
import javax.servlet.jsp.tagext.BodyTagSupport;

public class ShowNumForBbsTopic extends BodyTagSupport{
public void setBodyContent(BodyContent bc)
{
super.setBodyContent(bc);
}
public int doAfterBody()
{
try
{
BodyContent body = super.getBodyContent();
String bodystring = body.getString();//*这里可以取到你页面上要传近来的内容*
//这里做你的操作......
JspWriter out = body.getEnclosingWriter();
out.print("这里写你需要输出的内容");
} catch(Exception e)
{
e.printStackTrace();
}
return EVAL_PAGE;
}
}
3.你页面上需要用这个标签时在页面头部加入下面这句话
<%@ taglib uri="WEB-INF/myTags.tld" prefix="my" %>//my是你的别名
页面中要使用ShowNumForBbsTopic时:
<my:showNumForBbsTopic><bean:write name="HelpForReplyList" property="currPage"/></my:showNumForBbsTopic>
<bean:write name="HelpForReplyList" property="currPage"/>所代表的值就别刚才**注释的那句话接收到了
方法就是这样了,至于你想如何进行操作,那就看你自己怎么实现了。
在天湖山弹吉他的米老鼠
2009-01-20 · TA获得超过2064个赞
知道小有建树答主
回答量:1546
采纳率:100%
帮助的人:1032万
展开全部
首先你了解标签的原理

通过页面定义的标签里的参数传到实际实现他的类里 然后类根据这几个参数进行操作 实际上也就是在类里利用JAVA语言写HTML代码而已 你自己可以尝试下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友703feee
2009-01-20 · 超过41用户采纳过TA的回答
知道小有建树答主
回答量:188
采纳率:0%
帮助的人:116万
展开全部
继承之TagSupport, int doAfterBody()
Default processing for a body.
int doEndTag()
Default processing of the end tag returning EVAL_PAGE.
int doStartTag()

覆盖这些方法,具体看你自己需要覆盖哪个,方法名是你的依据,在一个tld文件里头描述你的标签信息,其实是个xml文件,其实就是指定类,以及一些类的属性值等,web.xml添加你的tld文件描述,jsp页面里头<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>类似于这样的使用
敲半天字镇麻烦
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xiliantian
2009-01-20 · TA获得超过1849个赞
知道大有可为答主
回答量:648
采纳率:0%
帮助的人:894万
展开全部
是可以的,其实是很简单的,你可以百度HI我,我给你个示例代码,包括tld是运行原理。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
1998syz1234567
2009-01-20 · TA获得超过347个赞
知道答主
回答量:445
采纳率:0%
帮助的人:0
展开全部
23654412598456235356555454525565544266858975659695414125635255698555654456
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式