⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 getpropertytag.java

📁 Jodd是一个开源的公用Java基础类库
💻 JAVA
字号:
package jodd.servlet.tags.basic;

import java.io.IOException;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.TagSupport;

import jodd.bean.BeanUtil;
import jodd.util.StringUtil;

/**
 * Reads property from an java bean object stored in specified scope. Bean
 * object is retrieved by name and then property value is read from it.
 */
public class GetPropertyTag extends TagSupport {

	private String beanName = null;
	/**
	 * Sets the bean name.
	 *
	 * @param v
	 */
	public void setBean(String v) {
		beanName = v;
	}
	/**
	 * Returns bean name.
	 *
	 * @return bean name
	 */
	protected String getBean() {
		return beanName;
	}

	private String name = "";
	/**
	 * Sets the property name.
	 *
	 * @param v
	 */
	public void setName(String v) {
		name = v;
	}
	/**
	 * Returns bean parameter name.
	 *
	 * @return bean parameter name
	 */
	protected String getName() {
		return name;
	}

	private String scope = "page";
	/**
	 * Sets the bean scope. May be one of the following:<br>
	 * request<br>
	 * session<br>
	 * page (i.e. pageScope, which is also default scope)<br>
	 *
	 * @param v
	 */
	public void setScope(String v) {
		scope = v;
	}

	/**
	 * Get the bean object from the required scope.
	 *
	 * @return bean object
	 */
	protected Object getBeanObject() {
		Object bean = null;
		if (scope.equals("page")) {
			bean = pageContext.getAttribute(beanName);
		} else if (scope.equals("request")) {
			bean = ((HttpServletRequest)pageContext.getRequest()).getAttribute(beanName);
		} else if (scope.equals("session")) {
			bean = ((HttpServletRequest)pageContext.getRequest()).getSession().getAttribute(beanName);
		}
		return bean;
	}

	public int doStartTag() {
		try {
			JspWriter out = pageContext.getOut();
			Object bean = getBeanObject();
			if (bean != null) {
				out.print(StringUtil.toString(BeanUtil.getProperty(bean, name)));
			}
		} catch (IOException ioe) {
		}
		return SKIP_BODY;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -