Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Spring boot和ThymileAF-上载和显示图像_Java_Spring Boot_Thymeleaf - Fatal编程技术网

Java Spring boot和ThymileAF-上载和显示图像

Java Spring boot和ThymileAF-上载和显示图像,java,spring-boot,thymeleaf,Java,Spring Boot,Thymeleaf,我正在用Thymeleaf制作一个简单的spring boot应用程序。我有一个控制器上传图像,它保存在项目文件夹上传。请有人向我解释一下,上传后如何立即显示?我应该使用@PostMapping还是仅仅使用一些Thymeleaf标签 我的控制器类 @Controller public class UploadFileController { public static String uploadDirectory = System.getProperty("user.dir&q

我正在用Thymeleaf制作一个简单的spring boot应用程序。我有一个控制器上传图像,它保存在项目文件夹上传。请有人向我解释一下,上传后如何立即显示?我应该使用@PostMapping还是仅仅使用一些Thymeleaf标签

我的控制器类

@Controller
public class UploadFileController {
    public static String uploadDirectory = System.getProperty("user.dir") + "/uploads";

    @RequestMapping("/")
    public String uploadPage(Model model) {
        return "uploadview";
    }

    @RequestMapping("/upload")
    public String upload(Model model, @RequestParam("files")MultipartFile[] files) {
        StringBuilder fileNames = new StringBuilder();

        for(MultipartFile file : files) {
            Path fileNameAndPath = Paths.get(uploadDirectory, file.getOriginalFilename());
            fileNames.append(file.getOriginalFilename());
            try {
                Files.write(fileNameAndPath, file.getBytes());
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        model.addAttribute("msg", "Uploaded files: " + fileNames.toString());
        return "uploadstatusview";
    }


更新 我正在添加屏幕截图,看看它应该是什么样子

  • 选择文件
  • 所选文件,例如test1.png-上载文件
  • 而不是在另一个带有上传端点的html模板上发送给我。到目前为止,它正在发挥作用。图片它保存在项目中,但现在我想看到这张图片,就像它在屏幕截图上一样

  • 如果我理解正确,您希望通过请求在单独的url获取新上传的图像。您可以在处理上载时将图像存储到列表或队列中,然后根据请求为列表中存储的每个图像编译模板
    您的模板可能如下所示:

    <img src="${imgPath}" />
    
    
    
    上传文件夹中的图像是可以直接从web访问还是只能通过服务访问?否,只能通过服务访问