Spring mvc 如何在spring和mysql数据库中上传和存储图像格式

Spring mvc 如何在spring和mysql数据库中上传和存储图像格式,spring-mvc,Spring Mvc,我使用实体模型使用私有CommonsMultipartFile文件数据使用set和get方法 我使用这个代码使用控制器类 MultipartFile file = inpatient.getFiledata(); String filename=null; InputStream inputstream=null; OutputStream outputstream=null; System.out.println("file size is " + file.

我使用实体模型使用
私有CommonsMultipartFile文件数据使用set和get方法
我使用这个代码使用控制器类

MultipartFile file = inpatient.getFiledata(); 
    String filename=null;
    InputStream inputstream=null;
    OutputStream outputstream=null;
    System.out.println("file size is " + file.getSize());
    filename=request.getRealPath("")+"/images/"+ file.getOriginalFilename();

        outputstream=new FileOutputStream(filename);
        System.out.println("fileName:" + file.getOriginalFilename());



        int readBytes = 0;
        byte[] buffer = new byte[10000];

        while ((readBytes = inputstream.read(buffer, 0, 10000)) != -1) {
            outputstream.write(buffer, 0, readBytes);
        }
        outputstream.close();
        inputstream.close();


        inpatientService.save(inpatient);

但是我有脸在我的sql数据库中存储,我可以在mysql中使用什么样的数据类型。否则,请选择任何格式。

是的,您应该将图像名称保存在数据库中,并在特定路径上载相同的图像。每次当您需要通过从数据库获取名称并使用 特定路径+图像名称。 在这里,您必须使用CommansMultipartFile,如下所示:

import org.springframework.web.multipart.commons.CommonsMultipartFile;

In your POJO's feild like:

private CommonsMultipartFile imagefiledata;
使用上述属性创建setter getter,如果您在jsp中使用文件标记上载图像,则必须定义表单属性enctype=“multipart/form data”,如:



希望这对你有帮助。如果您的问题解决了,请感谢。

为什么需要将图像存储到数据库中?为什么不使用FTP或将其放在本地存储上?
 <form:form action="createevent.so" method="post" commandName="event" enctype="multipart/form-data" >