在 Spring Boot 中存储和显示图像

问题描述

我正在尝试保存徽标(在项目中而不是在数据库中)并获取它并将其显示在 JSP 页面上为此我将图像的 URL 保存在数据库中但是当我获取它时我没有得到这里的图像是我的代码和项目结构的屏幕截图,请在此处帮助我,请让我知道这是否是正确的文件夹,或者我应该将图像保存在其他地方,谢谢。

文件保存方法

public static String storeLogoPath(MultipartFile file) {
        logger.info("File AAYA HAI " + file);
        String path = "";
        try {
            //String paths = "G:/MainWorkSpace/Picture_testing/WebContent/resources/images/"+file.getOriginalFilename();
            path = "G:/MainWorkSpace/TestProjects/ecomProject/src/main/resources/static/img/storeLogo/"+file.getOriginalFilename();
            File newFile = new File(path);
            newFile.createNewFile();
            FileOutputStream myfile = new FileOutputStream(newFile);
            myfile.write(file.getBytes());
            myfile.close();
            logger.info("File should be saved now :: ");
        } catch (Exception e) {
            e.printStackTrace();
        }

        return path;
    }

控制器方法

@RequestMapping(value = "/storeFormshow",method = RequestMethod.GET)
    public String addStoreForm(Model theModel) {
        Stores storeObj = new Stores();
        theModel.addAttribute("storeForm",storeObj);
        return "Store/storeForm";
    }

列表的 JSP 页面

<%@include file="/WEB-INF/views/Store/StoreTemplet/Header.jsp"%>


<div class="content-wrapper">
                <table class="table" id="table_id">
                    <thead>
                        <tr>
                            <th>Logo</th>
                            <th>ID</th>
                            <th>Store Name</th>
                            <th>Country</th>
                            <th class="text-center">Store Status</th>

                        </tr>
                    </thead>
                    <tbody>

                        <c:forEach var="store" items="${storeList}">
                            <tr>
                            <td> <img src="${store.logoURL}" width="10" height="10"> </td>
                                <td>${store.id}</td>
                                <td><a>${store.storeName}</a></td>
                                <td>${store.country}</td>
                                <td>${store.storeStatus}</td>
                            </tr>
                        </c:forEach>
                    </tbody>
                </table>
</div>

<%@include file="/WEB-INF/views/Store/StoreTemplet/Footer.jsp"%>

项目结构

enter image description here

为图片返回的 URL G:/MainWorkSpace/TestProjects/ecomProject/src/main/resources/static/img/storeLogo/Screenshot_2018-07-11-21-46-48.jpg"

应用程序属性

spring.mvc.view.prefix: /WEB-INF/views/
spring.mvc.view.suffix: .jsp


spring.servlet.multipart.max-file-size=10MB
spring.servlet.multipart.max-request-size=10MB

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)