教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 范文大全 > 公文资料 >

struts2自定义标签

来源:网络收集 时间:2026-09-01
导读: 可以自己定义自己的struts标签哦hehe 白叔Struts2自定义标签封装显示列表(2011-03-16 09:14:26) 标签: 杂谈 分类: java 1.首先搞一个显示列表的标签类 ListTag继承TagSupport 实现doStartTag() doEndTag() setName方法与 private String name;对应,如果名

可以自己定义自己的struts标签哦hehe

白叔Struts2自定义标签封装显示列表(2011-03-16 09:14:26)
标签: 杂谈 分类: java
1.首先搞一个显示列表的标签类

ListTag继承TagSupport 实现doStartTag() doEndTag() setName方法与 private String name;对应,如果名字换了也可以叫setXXX其他的,总之要一致,那个是传递参数用的,有就写一个。

一般就用doEndTag(),白叔访问了数据库,把该显示的网页显示了。注意JspWriter out = this.pageContext.getOut(); JSP直接用,java要获取。


package tutorial;
import java.sql.*;

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

public class ListTag extends TagSupport{
public dbcontrol db1;
public ResultSet rs;
public String sqlstr;
private String name;
public void setName(String name)
{
http://www.77cn.com.cn = name;
}
String newstitle=new String();
public int doStartTag()throws JspTagException
{
return 0;
}

public int doEndTag()throws JspTagException
{
StringBuffer strbuf=new StringBuffer();
db1=new dbcontrol();
sqlstr="select * from news order by newsid";
rs=db1.executeQuery(sqlstr);
try{
while(rs.next())
{
newstitle=rs.getString("newstitle");
strbuf.append(name);
strbuf.append(":");
strbuf.append(newstitle);
strbuf.append("<br>");
}
JspWriter out = this.pageContext.getOut();
out.println(strbuf);
strbuf = null;
}
catch(Exception ex)
{
System.out.println(ex);
}

return 0;
}
}

















2.在一个地方建个WEB-INF/mytag/tagtest.tld


name里是标签在JSP中使用的名字

tag-class是对应那个标签类




<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE taglib
PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
"http://www.77cn.com.cn/dtd/web-jsptaglibrary_1_2.dtd">
<taglib>
<tlib-version>1.0</tlib-version>
<jsp-version>1.2</jsp-version>
<short-name>tutorial</short-name>
<!--OutputTag-->
<tag>
<name>out</name>
<tag-class>tutorial.ListTag</tag-class>
<body-content>empty</body-content>
<attribute>
<name>name</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue>
</attribute>
</tag>
</taglib>









3.success.jsp文件,表签用的时候taglib uri="/WEB-INF/mytag/tagtest.tld" prefix="tagtest"

指向那个标签tld文件,然后命名一个标签库名字tagtest来引用

<tagtest:out name="Helloworld"/> 使用标签库:标签名 name对应那个参数名字,后面是传递值。





<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%@ taglib uri="/WEB-INF/mytag/tagtest.tld" prefix="tagtest"%>
<%
Str
ing path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getSer

可以自己定义自己的struts标签哦hehe

verPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP 'success.jsp' starting page</title>

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->

</head>

<
;body>
Success <br>
<tagtest:out name="Helloworld"/>
</body>
</html>


这样JSP网页上几乎没东西,连显示部分都封装成标签了。

…… 此处隐藏:797字,全部文档内容请下载后查看。喜欢就下载吧 ……
struts2自定义标签.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/fanwen/710241.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)