一个非常好用的API----BeanUtils

在写大作业的时候,发现了一个非常好用的API----BeanUtil,于是自己编了一个非常实用的小工具,可以把request对象非常方便的转换成bean对象

package com.sdufe.util;

import java.util.Enumeration;

import javax.servlet.http.HttpServletRequest;

import com.sun.org.apache.commons.beanutils.BeanUtils;

/**
 * 该工具类的功能是封装客户提交的表单数据到formbean中
 * 
 * @author zhangbowen
 * 
 */
public class WebUtils {

	// 表示采用泛型编程,返回带有T类型的对象
	public static  T request2Bean(HttpServletRequest request, Class clas) {
		try {
			T bean = clas.newInstance();
			Enumeration en = request.getParameterNames();
			while (en.hasMoreElements()) {
				String name = en.nextElement();
				String value = new String(request.getParameter(name).getBytes(
						"ISO-8859-1"), "UTF-8");
				BeanUtils.setProperty(bean, name, value);
			}
			return bean;
		} catch (Exception e) {
			throw new RuntimeException(e);
		}
	}
}
因为我在JSP和Servlet中设置的编码解码格式都是UTF-8,所以在代码中将bean对象的value值都转换成UTF-8即变成中文在封装进去了,如果大家在使用的时候设置了其他的编码格式,一定要记得在第25行改一下~  

注释说的很清楚了, T表示采用泛型,返回一个T类型的对象

稍后我会把.class理解清楚并总结上的

总结一下亮点

泛型的灵活应用,获取枚举类型然后遍历

BeanUtils.setProperty(bean, name, value);简直是程序员的福音O(∩_∩)O


请记得这个好用的API

====================================================================================


com.sun.org.apache.commons.beanutils.BeanUtils;


====================================================================================

你可能感兴趣的:(javaweb)