request.getAttribute这里获取不到文件转成MultipartFile类型
时间: 2024-01-31 10:57:19 浏览: 29
`request.getAttribute()` 方法是用于获得请求中的 attribute 属性值,而不是用于获取文件上传的内容。如果你想要获取上传的文件,应该使用 multipart/form-data 类型的请求,并使用 `request.getPart()` 或 `request.getParts()` 方法获取上传的文件内容。
如果你使用 Spring 框架,可以在控制器方法中使用 `@RequestParam("file") MultipartFile file` 注解来获取上传的文件。然后你就可以通过该 MultipartFile 对象来操作上传的文件了。
相关问题
request.getAttribute这里获取不到文件
`request.getAttribute()` 方法是用于获取在 request 请求中存储的属性值,而文件是通过 multipart/form-data 格式上传的,它们不是 request 属性的一部分。因此,要获取上传的文件,应该使用 `request.getPart()` 方法,该方法返回表示上传文件的 Part 对象,您可以从中读取文件内容和文件名。例如,以下代码将上传的文件保存到服务器上:
```
Part filePart = request.getPart("file"); // 获取上传的文件
String fileName = Paths.get(filePart.getSubmittedFileName()).getFileName().toString(); // 获取文件名
InputStream fileContent = filePart.getInputStream(); // 获取文件内容流
// 将文件保存到服务器上
Files.copy(fileContent, Paths.get("/path/to/save/directory/" + fileName), StandardCopyOption.REPLACE_EXISTING);
```
request.getattribute怎么获取List
如果你想使用`request.getAttribute`获取请求中的List,你需要先将List放入到请求属性中。例如,在Servlet中,你可以使用`request.setAttribute`将List放入到请求属性中,然后使用`request.getAttribute`获取它。示例如下:
```
// 将List放入请求属性中
List<String> myList = new ArrayList<String>();
myList.add("item1");
myList.add("item2");
request.setAttribute("myList", myList);
// 在另一个方法中获取List
List<String> myListFromRequest = (List<String>) request.getAttribute("myList");
```
请注意,如果你使用的框架或库不同,则可能会有不同的方法来获取请求中的List。