#标签

不使用struts标签显示表单验证的错误信息

本文概要:在使用struts2的表单验证的时候,会有一些信息(比如字段错误信息)返回到jsp页面中,显示给用户.
使用struts标签可以很简单的达到目的.但是struts标签却自带样式,排版起来非常不方便.这里就介绍怎么样不使用struts标签,来显示出这些信息

比如有如下网页:
[code=java]
actionerror:
actionmessage:



提交

[/java]

jsp中的自定义标签的简单教程

  今天去找工作,我说我用过jstl标签.然后他问我 有没有试过自定义标签.我说没有.后来他说他们会五天内通知我,让我回去准备一下.

上次我们班有个同学找工作,别人问个问题,他不会.回来也不管,结果去笔试又考了这个题....悲剧了.

这次我一定要吸取教训,把问过的几个问题都搞懂了.

先来看看自定义标签.

自定义标签使用方法

1、写一个类,继承TagSupport,这个类就是用来处理标签的.

类里主要有2个方法doStartTag()和doEndTag(),分别对开始闭合标签进行处理

2、写.tld标签文件

3、在web.xml中对tld文件进行配置

 

废话少说,直接看代码.下面写个显示当前时间的自定义标签

代码比较简单,大家一看就懂.

 

ShowTime.java

 

package org.zzp.tag;

 

import java.io.IOException;

import java.text.SimpleDateFormat;

import java.util.Date;

 

import javax.servlet.jsp.JspException;

import javax.servlet.jsp.JspWriter;

import javax.servlet.jsp.tagext.TagSupport;

 

public class ShowTime extends TagSupport {

private static final long serialVersionUID = 3593807751447286551L;

 

@Override

public int doEndTag() throws JspException {

JspWriter out=pageContext.getOut();

Date date=new Date();

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");ot;);ot;);

try {

out.println(sdf.format(date));

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return super.doEndTag();

}

 

@Override

public int doStartTag() throws JspException {

return super.doStartTag();

}

}

 

 

MyTag.tld

 

<?xml version="1.0" encoding="UTF-8" ?>gt;?>?>?>?>

<!DOCTYPE taglib

PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"quot;quot;

"http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">gt;;>;>

<taglib>gt;

<tlib-version>1.0</tlib-version>gt;gt;

<jsp-version>1.0</jsp-version>gt;gt;

<short-name>mytags</short-name>gt;gt;

<tag>gt;

<name>time</name>gt;gt;

<tag-class>org.zzp.tag.ShowTime</tag-class>gt;gt;

</tag>gt;

</taglib>gt;

 


web.xml

<web-app>gt;

 

<jsp-config>gt;

<taglib>gt;

<taglib-uri>/mytag</taglib-uri>gt;gt;

<taglib-location>/WEB-INF/MyTag.tld</taglib-location>gt;gt;

</taglib>gt;

</jsp-config>gt;

</web-app>gt;

其中,taglib-location是tld文件的位置

 

tag.jsp

 

 

<%@ page language="java" contentType="text/html; charset=UTF-8"quot;quot;quot;quot;

    pageEncoding="UTF-8"%>gt;%>%>

<%@taglib prefix="mine" uri="/mytag" %>gt;%>%>%>%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">gt;;>;>;>;>

<html>gt;

<head>gt;

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">gt;;>;>;>;>

<title>Insert title here</title>gt;gt;

</head>gt;

<body>gt;

<mine:time></mine:time>gt;gt;

</body>gt;

</html>gt;

 

 

 

 

...
1 / 1