JSP自定义标签

本文详细介绍了如何在JSP中创建自定义的foreach和select标签。通过编写助手类、配置XML文件,实现了foreach标签的迭代功能和select下拉框的属性拼接。强调了foreach标签的递归思想以及select标签对属性的分析和封装,旨在封装公共功能,提高开发效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

导语:

接上期的博客讲述了jsp的自定义标签,今天我们主要来看以一下foreach和select这个自定义标签。

JSP自定义标签(一看就会)https://blog.csdn.net/weixin_67150631/article/details/125671236?spm=1001.2014.3001.5501本期的文章就是教会大家定义自己的标签去使用,为什么可以让我们自定义标签呢?其目的就是为了封装一些公共功能,比如分页功能的代码、一个复杂样式的按钮,如果这些代码每个人都去编写一遍,显然会增加工作量,所以我们可以把相关代码封装成我们自定义的标签,这样在自己和他人需要使用时,直接使用这个标签就可以获得相关的功能了
 

foreach标签

1.编写助手类

package com.zking.mvc.tag;

import java.util.Iterator;
import java.util.List;
import java.util.Objects;

import javax.servlet.jsp.tagext.BodyTagSupport;

/**
 * 
 * @author 86198 foreach助手类
 */

public class ForeachTag extends BodyTagSupport {

	private List<?> items;
	private String var;

	public String getVar() {
		return var;
	}

	public void setVar(String var) {
		this.var = var;
	}

	public List<?> getItems() {
		return items;
	}

	public void setItems(List<?> items) {
		this.items = items;
	}

	@Override
	public int doStartTag() {
		if (Objects.isNull(this.items) || this.items.size() <= 0) {
			return SKIP_PAGE;
		}
		Iterator<?> it = this.items.iterator();
		Object next = it.next();
		this.pageContext.setAttribute(var, next);
		this.pageContext.setAttribute("iterator", it);
		return EVAL_BODY_INCLUDE;

	}

	@Override
	public int doAfterBody() {
		Iterator<?> it = (Iterator<?>) this.pageContext.getAttribute("iterator");
		if (it.hasNext()) {
			this.pageC
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值