📄 httpparamtag.java
字号:
/*
* Created on 2004-2-19 By Liudong
*/
package jdlog.util.tags;
import java.lang.reflect.Constructor;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.TagSupport;
/**
* 用户处于请求参数的标签库(直接生成指定类型的变量)
* @author Liudong
*/
public class HttpParamTag extends TagSupport {
String id = null; //变量名称
String type = String.class.getName(); //参数类型(默认是字符串类型)
String name = null; //参数名
String value = null; //如果没有指定参数则使用该缺省值,该类型必须具有一个带一个字符串参数的构造子
public int doStartTag() throws JspException {
try {
Class cls = Class.forName(type);
Constructor con = cls.getConstructor(new Class[] {String.class});
String paramValue = pageContext.getRequest().getParameter(name);
if(paramValue==null)
paramValue = value;
Object obj = con.newInstance(new Object[] {paramValue});
pageContext.setAttribute(id, obj);
}catch(Exception e) {
throw new JspException(e);
}
return SKIP_BODY;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -