struts2 实现自定义标签
/*** lostingz* Created on 2015年11月18日*/ package com.test.web.tags;import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;import org.apache.struts2.components.Component; import org.apache.struts2.views.jsp.ComponentTagSupport;import com.opensymphony.xwork2.util.ValueStack;public class TestTag extends ComponentTagSupport {private static final long serialVersionUID = 1L;private String code;/*** 获得一个基本类的对象。** @param stack* @param req* @param res* @return*/@Overridepublic Component getBean(ValueStack stack, HttpServletRequest req, HttpServletResponse res) {return new TestComponent(stack);}/*** 设置标签获取到的code对象。* @param code*/public void setCode(String code) {this.code = code;}protected void populateParams() {super.populateParams();TestComponent testComponent = (TestComponent) component;//将code赋值给compnent testComponent.setCode(code);}}
/*** lostingz* Created on 2015年11月18日*/ package com.test.web.tags;import java.io.IOException; import java.io.Writer;import org.apache.struts2.components.Component; import com.opensymphony.xwork2.util.ValueStack;public class TestComponent extends Component {private String code;public TestComponent(ValueStack stack) {super(stack);}public String getCode() {return code;}public void setCode(String code) {this.code = code;}public boolean start(Writer writer) {boolean flag = true;try {String result = getInfo(code); //输出writer.write(result);} catch (IOException e) {e.printStackTrace();}return flag;}public boolean end(Writer writer, String body) {return super.end(writer, body);}private String getInfo(String code){ //处理code得到显示的信息return doSomething(code);}}
配置
<taglib> <tlib-version>2.2.3</tlib-version> <jsp-version>1.2</jsp-version> <short-name>test</short-name> <uri>/testTag</uri><display-name>"test"</display-name> <tag> <name>getCode</name> <tag-class>com.test.web.tags.TestTag</tag-class> <body-content>empty</body-content> <attribute> <name>code</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute></tag> </taglib>
转载于:https://www.cnblogs.com/birkhoff/p/4974647.html
struts2 实现自定义标签相关推荐
- Struts2自定义标签——示例
自定义Button功能描述: <tangs:button items="apple,orange,banana"/> 解析后为: <input type=&q ...
- [JavaWeb基础] 012.Struts2 自定义标签使用
在做开发中,我们会把一些比较经常使用到的代码封装起来,这样可以加快开发的速度和减少错误,并且在修改bug可以一次修改多次修复.那么在前端页面上,如果我们要经常用到公用的显示功能,并涉及到服务端逻辑操作 ...
- struts2自定义标签_Struts 2 –没有为动作和结果输入定义结果
struts2自定义标签 Recently while working on a Struts 2 project, I got a strange error message No result d ...
- Struts2之控制标签
Struts2的控制标签,主要用于完成流程控制,以及对ValueStack中的控制,控制标签可以完成输出流程的控制,例如循环.分支等操作,也可以完成对集合的合并.排序等操作. 1.常用的控制标签有:i ...
- java 模糊查询 分页(自定义标签)
本次的实现是采用struts2+hibernate+分页标签 实现 class :PagerTag 是用来实现自定义分页标签,继承SimpleTagSupport实现自定义标签 public clas ...
- JSTL(c标签)与Struts2(s标签)标签
引入jstl标签库 项目导入standard.jar ,jstl.jar包 在jsp页面加入如下句: <%@ taglib prefix="c" uri="http ...
- javaweb学习总结(二十三)——jsp自定义标签开发入门
一.自定义标签的作用 自定义标签主要用于移除Jsp页面中的java代码. 二.自定义标签开发和使用 2.1.自定义标签开发步骤 1.编写一个实现Tag接口的Java类(标签处理器类) 1 packag ...
- struts2中使用标签操作静态方法等
2019独角兽企业重金招聘Python工程师标准>>> 有的时候对<%%>特别敏感,不想用jsp的<% %>来调用java类中的静态方法,这时候我们可以用st ...
- [PHP] JQuery+Layer实现添加删除自定义标签代码
JQuery+Layer实现添加删除自定义标签代码 实现效果如下: 实现代码如下: <!doctype html> <html> <head> <meta c ...
最新文章
- 合并排序(C语言实现)
- Leangoo背景更新-看板背景任你选!!!
- 苏黎世大学 AI 新研究:仅用少量样本生成高质量光声图像
- jQuery中的.bind()、.live()和.delegate()之间区别分析
- CF1B Spreadsheets
- WePY框架开发的小程序如何在微信web开发者工具中运行起来
- jmeter-00 JMeter 运行过程
- 01.轮播图之三 : collectionView 轮播
- map函数的用法python,详解Python map函数及Python map()函数的用法
- Spring JdbcTemplate 模板剖析 之 常用 增删改查
- 栈基本操作的java代码实现(建栈,初始化栈、进栈、出栈)
- win10电脑时间同步设置方法
- QQ音乐的歌曲真实地址解析
- 推荐电影 梦工厂经典电影列表 1996-2012
- noob的第一步——基于51单片机的指纹密码锁
- 【创业感悟】企业生存法则
- 系统服务之下载管理(DownloadManager)
- performance 优化
- Redis-命令操作Redis
- @2022-02-22:每日一语
热门文章
- suse11sp4配置vnc显示gnome
- 区块链学堂:区块链引子
- ess用户名和密码_陈ess洁如何从摄影系学生转变为成功的自由职业者和内容创作者(播客)...
- devkit_如何使用NodeMCU Devkit和Firebase数据库开始物联网
- javascript案例_如何在JavaScript中使用增强现实-一个案例研究
- python中opencv中inrange用法_python-opencv中的cv2.inRange函数
- (C++)1040 有几个PAT
- 专业的java培训机构是否靠谱,对比一下就知道了!
- docker的网络架构配置
- Python中的注释(转)