自定义标签,在jsp中获得标签处理类中值,用foreach循环输出list

用自定义标签,最后的效果是在页面上显示1到10,但在jsp中不能出现JAVA代码,而是用标签调用,并用foreach循环输出,采用EL表达式,希望大神能给出标签处理类和j... 用自定义标签,最后的效果是在页面上显示1到10,但在jsp中不能出现JAVA代码,而是用标签调用,并用foreach循环输出,采用EL表达式,希望大神能给出标签处理类和jsp的代码,小弟初学,请详细说明啊,谢谢了 展开
 我来答
百度网友9c4aaf7
推荐于2017-12-16 · TA获得超过150个赞
知道小有建树答主
回答量:135
采纳率:0%
帮助的人:79.2万
展开全部

还是我说清楚些吧,对于初学者来说,这样更好学习,如果你自己去摸索的话肯定记忆更深刻些,但现在你可以省很多时间了……JSTL

一、页面配置如下

1、

对应tld文件配置文件里面的

2、标签的使用如

这里面的searchText以及num、url等属性在tld文件里面定义,对应的java文件中要有该变量

二、tld配置文件

这个自己上百度找个看看吧,都一样的。想说的一点是,一个<tag>标签只能对应一个public的CLASS类,我想过在同一个JAVA文件中多加几个CLASS,但不起作用。

三、java文件

简单就如这样子

其中你要在页面中用到的属性,你就在类里面定义和在tld文件里面做对应的配置就可以使用了,就这样了,祝你学习愉快……

http://www.cnblogs.com/edwardlauxh/archive/2010/05/19/1918590.html这个一个对你有用

育知同创教育
2016-03-11 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部
1、jsp中自定义标签类:
package com.tutorialspoint;
import javax.servlet.jsp.tagext.*;
import javax.servlet.jsp.*;
import java.io.*;

public class HelloTag extends SimpleTagSupport {
public void doTag() throws JspException, IOException {
JspWriter out = getJspContext().getOut();
out.println("Hello Custom Tag!");
}
}

2、编译以上类,并将其复制到环境变量CLASSPATH目录中。最后创建如下标签库:<Tomcat安装目录>webapps\ROOT\WEB-INF\custom.tld。
<taglib>
<tlib-version>1.0</tlib-version>
<jsp-version>2.0</jsp-version>
<short-name>Example TLD</short-name>
<tag>
<name>Hello</name>
<tag-class>com.tutorialspoint.HelloTag</tag-class>
<body-content>empty</body-content>
</tag>
</taglib>

3、可以在JSP文件中使用Hello标签:
<%@ taglib prefix="ex" uri="WEB-INF/custom.tld"%>
<html>
<head>
<title>A sample custom tag</title>
</head>
<body>
<ex:Hello/>
</body>
</html>

以上程序输出结果为:
Hello Custom Tag!
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sn_yangchao
2013-09-21 · 超过42用户采纳过TA的回答
知道小有建树答主
回答量:158
采纳率:0%
帮助的人:111万
展开全部
下面举个例子:${projectTypes}为LIST<DICT> 对象,前台JSP显示为下拉列表。
<select id="project_projectType" name="projectType">
<c:forEach items="${projectTypes}" var="dict">
<c:choose>
<c:when test="${dict.code eq project.projectType}">
<option selected="selected" value="${dict.code}" >${dict.label}</option>
</c:when>
<c:otherwise>
<option value="${dict.code}" >${dict.label}</option>
</c:otherwise>
</c:choose>
</c:forEach>
</select>
追问
那标签处理类中的代码怎么写?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
般若兮若
2013-09-21 · TA获得超过2705个赞
知道小有建树答主
回答量:1246
采纳率:0%
帮助的人:892万
展开全部
你是想要在页面用jstl遍历的效果还是想要一个自己用java代码写的标签?
追问
自己用java代码写的标签,最后在页面上循环显示1到10就行了,但jsp中不能有java代码
追答
那简单了...
在你的后台封装一个List集合存放1-10,然后通过任意一种范围例如request.setAttribute("list",list);把这个集合放到map里.
在jsp页面上方加入就可以使用jstl标签了.
在页面上直接写

${obj}

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式