自定义标签---word
第三章 自定义标签
终极目标:Jsp页面无Java代码块。
解决方案:使用标签(用户自定义 + 系统定义(标准标签库JSTL))。
1. 为什么需要使用标签?
使用标签之后,能够实现jsp页面无java脚本。
Jsp页面更简洁、便于代码的封装、维护更方便。
2. 标签在JavaWeb中的版本分类?
标准1.2版 、标签文件2.0版
3. 标准1.2版使用步骤:
a) 创建一个类,继承自BodyTagSupport类。
b) 重写系统中的方法:doStartTag()、doEndTag();(这些方法中可以写标签中的内容)
c) 在WEB-INF目录中对标签进行配置。(创建配置文件:“*.tld”)
d) 在jsp页面使用标签。(导入标签库: <%@ taglib uri=”配置文件的路径” prefix=”标签文件前缀名” %>)
注意事项:
1. 独立标签(可以带有属性)。 重写doStartTag()或doEndTag()方法即可。 获取输出流:JspWriter out = super.pageContext.getOut(); 2. 带有内容的标签(可以带有属性)。 重写doAfterBody()方法即可。 获取内容:String content = super.bodyContent.getString() 获取输出流:JspWriter out = super.bodyCoent.getEnclosingWriter(); |
可以在标签处理类中定义属性。 在tld文件中对属性进行配置,jsp页面就可以使用该属性(注意:属性名必须跟配置的名字相同)。 |
4. 2.0版,简单标签
步骤:
1. 在WEB-INF目录下,创建tags目录。
2. 创建标签文件。命名规则:*.tag
3. 在tag文件中编写标签处理代码(跟jsp语法完全一致)。
<%@ tag pageEncoding=”编码” import=”导入包” %>
………………………………
4. 在jsp中使用。<%@ taglib tagdir=”/WEB-INF/tags” prefix=”前缀名” %>
<%@ tag pageEncoding="UTF-8" %> //表示当前为标签页面,而不是jsp <%@ attribute name="count" required="true" rtexprvalue="true" type="java.lang.Integer" %> //定义一个属性 <!-- 将标签中的内容,自动存放在request范围中 --> <jsp:doBody var="mycontent" scope="request" /> //获取标签中间的内容 |
<%@ taglib tagdir="/WEB-INF/tags" prefix="xw" %> |
自定义标签---word相关推荐
- day056-58 django多表增加和查询基于对象和基于双下划线的多表查询聚合 分组查询 自定义标签过滤器 外部调用django环境 事务和锁...
一.多表的创建 from django.db import models# Create your models here. class Author(models.Model):id = model ...
- javaweb学习总结(二十三)——jsp自定义标签开发入门
一.自定义标签的作用 自定义标签主要用于移除Jsp页面中的java代码. 二.自定义标签开发和使用 2.1.自定义标签开发步骤 1.编写一个实现Tag接口的Java类(标签处理器类) 1 packag ...
- [PHP] JQuery+Layer实现添加删除自定义标签代码
JQuery+Layer实现添加删除自定义标签代码 实现效果如下: 实现代码如下: <!doctype html> <html> <head> <meta c ...
- JSP自定义标签rtexprvalue属性
rtexprvalue的全称是 Run-time Expression Value, 它用于表示是否可以使用JSP表达式.(比如EL表达式或OGNL表达式). 当在<attribute>标 ...
- velocity自定义标签和指令
velocity本身支持自定义标签和指令的扩展, 在 Velocity 模板语言的语法中,以美元符 $ 开头的为变量的声明或者引用,而以井号 # 开头的语句则为 Velocity 的指令(Direct ...
- java中velocity定义宏标签_velocity自定义标签和指令(转:zwj)
velocity本身支持自定义标签和指令的扩展,我们看看扩展指令的步骤及searchweb2的应用场景, 1.使用方法 在 Velocity 模板语言的语法中,以美元符 $ 开头的为变量的声明或者引用 ...
- JSP 自定义标签介绍
自定义标签是用户定义的JSP语言元素.当JSP页面包含一个自定义标签时将被转化为servlet,标签转化为对被 称为tag handler的对象的操作,即当servlet执行时Web containe ...
- R语言ggplot2可视化:通过在element_text函数中设置ifelse判断条件自定义标签文本的显示格式:例如、粗体、斜体等
R语言ggplot2可视化:通过在element_text函数中设置ifelse判断条件自定义标签文本的显示格式:例如.粗体.斜体等 目录
- jsp自定义标签学习
简单的说明: 1,说明---jsp自定义标签: HelloWorld:jsp自定义标签的使用流程: QueryTag:带属性标签的定义以及连接数据库使用: IteratorTag:带标签体的标签定义以 ...
最新文章
- 【第三组】用例+功能说明+技术说明
- uboot启动流程概述_uboot 分析之 启动流程
- c++ map利用迭代器赋值
- C# 温故而知新:Stream篇(七)
- 工作总结3:axios里面的主要参数
- 2017年国内开源镜像站点汇总 1
- oracle rac 高并发性能_高并发业务下 JVM 涉及的垃圾回收与性能问题分析与定位...
- 人脸识别ArcfaceDemo for Windows 分享
- Trick(九)—— ++i 与 i++ 的本质区别
- php 生成导出excel,PHP导出生成EXCEL文件
- 基站定位php,基于Python的移动联通基站接口调用代码实例
- 硬盘IDE模式与AHCI模式的区别
- vm内核参数之缓存回收drop_caches
- vscode复制代码到wps中怎么不带黑色背景
- 一个农村博士的独白:全家为什么只有我读到了博士?
- 超详细的ArcGIS生成格网知识汇总
- python自学笔记+一个汇率计算PyQt实例
- 微信小程序(三)分类界面
- 移动端如何在前端阻止input框获得焦点时手机键盘的弹出
- 记录keil5下使用RAM调试过程
热门文章
- python视觉识别_视觉显著性python_OpenCV—python 图像显著性检测算法—HC/RC/LC/FT
- 深鉴科技联合创始人汪玉:针对机器视觉的深度学习处理器(附视频、PPT下载)
- 大文件数据安全传输如何做到!
- ffmpeg c++ vs2017 将pcm转mp3格式
- 10万字基于大数据的智慧城市解决方案word
- eclipse 解决启动慢、运行慢的方法总结(最全)
- Ranger 和 Ranger Audit 审计功能模块介绍
- Win11如何启用或禁用桌面贴纸?
- Nash 1951 Non-cooperative Games 部分翻译(含Nash均衡点存在性证明)
- Ubuntu16.04虚拟机配置模拟路由器