通过反射机制自动装配所上传的文件到实体类

想要通过反射实例化该对象必须有其该类的全类名 例: Class clz = Class.forName("com.dzkh.bean.User");

这样通过全类名就创建了一个类,并且把它赋值给了 变量clz。

如果想要调用 此类的某些方法,必须先对其实例化 例:Object bean = null;   bean = clz.newInstance();

这样 变量 bean内存放的就是 实例化的clz类。

之后 Method m = bean.getClass().getDeclaredMethod("你想要调用的方法名", String.class); 

这样 method类里装载的就是 要调用的方法。

String  result = (String)m.invoke(bean, “你要赋值到方法的值”); 这样就成功赋值了。

通过HttpServletRequest request来获取传输的文件:

import org.springframework.web.multipart.MultipartHttpServletRequest;

import org.springframework.util.MultiValueMap;

MultipartHttpServletRequest multipartRequest = WebUtils.getNativeRequest(request, MultipartHttpServletRequest.class);
MultiValueMap resultMap1 = multipartRequest.getMultiFileMap();

List resultFileList = (LinkedList<MultipartFile>)resultMap1.get(item);

MultipartFile uploadFront = (MultipartFile)resultFileList.get(0);

通过uploadFront.getOriginalFilename()可以看出在页面上提交时 这个文件的name。

原文地址:https://www.cnblogs.com/llja/p/7641643.html