springのようなjava反射付与bean


この間springを使ってデータマッピングをしていましたが、どうして会社はこれらのフレームワークが好きではなく、いつも適用されません.の
私は崩壊して、javaもこのようないくつかの経典の枠組みで、他の人はすべてどのようにあなたが合わないことに適して、--冷静--
 
その後、xmlを解析するのが下手だったので、springの反射を参考にして、反射のツールクラスを書いて、xmlとして実体bean属性に反射しました.
コードを出して、考えているわけではありません.書いても何もありませんから.しかもspring resourceを見たことがないので、もっと上手かどうか分からないので、どこに書きたいですか.
 
package com.logi.lpromis.mapping.xml;

import java.lang.reflect.Field;
import java.lang.reflect.Method;

import org.apache.log4j.Logger;
import org.w3c.dom.Element;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;

public class XMLPropertyReflection
{
	private static final Logger logger = Logger.getLogger(XMLPropertyReflection.class);
	/**
	 *       
	 * @param bean  
	 * @param filename     
	 * @return    
	 * @throws Exception
	 */
	public static Object getProperty(Object bean,String filename) throws Exception
	{
		Class<? extends Object> beanClass = bean.getClass();
		Field field = beanClass.getDeclaredField(filename);
		field.setAccessible(true);
		Object property = field.get(bean);//    
		return property;
	}
	
	/**
	 *      
	 * @param bean  
	 * @param filename   
	 * @param filevalue      
	 * @throws Exception
	 */
//	public static void setProperty(Object bean,String filename,String filevalue) throws Exception
//	{
//		try{
//		Class<? extends Object> beanClass = bean.getClass();
//		Field field = beanClass.getDeclaredField(filename);
//		field.setAccessible(true);
//		Object value = ConvertHandler(field.getType(),filevalue);//    
//		field.set(bean, value);//    
//		}
//		catch (Exception e)
//		{
//			if(e instanceof NoSuchFieldException)
//			{
//				logger.error("      "+filename);
//				logger.error(e);
//			}
//			else
//				throw e;
//		}
//	}
	
	/**
	 *       
	 * @param type       
	 * @param filevalue      String  
	 * @return      
	 * @throws Exception
	 */
	public static Object ConvertHandler(Class<?> type,String filevalue) throws Exception
	{
		String typename = type.getName();
		if(filevalue.getClass().getName().equals(typename))
			return filevalue;//        
		else if("Boolean".equalsIgnoreCase(typename) || "java.lang.Boolean".equals(typename))
		{
			//boolean 
			if(filevalue.equalsIgnoreCase("true") || filevalue.equals("1"))
				return new Boolean(true);
			else
				return new Boolean(false);
		}
		else if("int".equalsIgnoreCase(typename) || "Integer".equals(typename) || "java.lang.Integer".equals(typename))
			return new Integer(filevalue);//int  
		else if("String".equalsIgnoreCase(typename) || "java.lang.String".equals(typename))
			return new String(filevalue);//String  
		else
		{
			throw new Exception("xml       "+typename+",    XMLPropertyReflection ConvertHandler");//       ,    XMLPropertyReflection ConvertHandler
		}
	}
	
	/**
	 *      
	 * @param bean  
	 * @param filename   
	 * @param filevalue      
	 * @throws Exception
	 */
	public static void setProperty(Object bean,String fileName,String fileValue) throws Exception
	{
		try
		{
			Class<? extends Object> beanClass = bean.getClass();
			//  set  
			String fieldName = fileName.substring(0,1).toUpperCase()+fileName.substring(1);
			String setFieldName = "set"+fieldName;//  set   
			String getFieldName = "get"+fieldName;//  get   
			Method getMethod = beanClass.getMethod(getFieldName);//      
			Class<?> propertyType = getMethod.getReturnType();//      
			Method setMethod = beanClass.getMethod(setFieldName,new Class[]{propertyType});
			Object value = ConvertHandler(propertyType,fileValue);//    value
			setMethod.invoke(bean, new Object[]{value});
		}
		catch (Exception e)
		{
			if(e instanceof NoSuchMethodException)
			{
				logger.error("      " + fileName, e);
			}
			else
				throw e;
		}
	}
	
	public static void setProperty(Object object,Element ele) throws Exception
	{
		NamedNodeMap attributeMap = ele.getAttributes();
		for (int i = 0; i < attributeMap.getLength(); i++)
		{
			Node cataNode = attributeMap.item(i);
			XMLPropertyReflection.setProperty(object, cataNode.getNodeName(), cataNode.getNodeValue());
		}
	}
}

 下手ですが、よろしくお願いします.このうちgetDeclaredFieldメソッドでは親属性を取得できないため、getmethodメソッドで共通メソッドを取得するしかありません