图片上传并上传到数据库

html代码:

<!--                上传图片-->
                <tr>
                    <div class="" style="height: 85px; width: 85px;">
                        <img src=" " alt="" width="100%" height="100%" id="img" name="fileStudentImage"  class="border border-primary ml-1" ondblclick="chooseImageFile('Picture')" />
                        <input type="file"  name="fileStudentImage" id="Picture"  hidden="hidden"  accept="image/*" onchange="showImgToView('Picture')" />
                    </div>
                </tr>

js代码:

// 上传图片
    //打开file表单,选择图片
    function chooseImageFile(inputFileID) {
        $("#" + inputFileID).click();
    }
    //创建FileReader对象
    //FileReader接口提供了一个异步的API,通过这个API可以从浏览器中异步访问文件系统中的数据。因此,FileReader接口可以读取文件中的数据,并将读取的数据放入到内存中去
    var imgReader = new FileReader();

    //正则表达式 过滤图片文件
    regexImageFilter = /^(?:image\/bmp|image\/cis\-cod|image\/gif|image\/ief|image\/jpeg|image\/jpeg|image\/jpeg|image\/pipeg|image\/png|image\/svg\+xml|image\/tiff|image\/x\-cmu\-raster|image\/x\-cmx|image\/x\-icon|image\/x\-portable\-anymap|image\/x\-portable\-bitmap|image\/x\-portable\-graymap|image\/x\-portable\-pixmap|image\/x\-rgb|image\/x\-xbitmap|image\/x\-xpixmap|image\/x\-xwindowdump)$/i;

    //file表单改变事件,将选择的图片显示到img元素
    function showImgToView(inputFileId) {
        //选择图片文件
        var imgFile = $("#" + inputFileId).get(0).files[0];
        //判断上传文件是否为图片格式
        if (!regexImageFilter.test(imgFile.type)) {
            layer.msg("请选择有效的图片文件", { icon: 0, title: "提示" });
        }
        else {
            //readAsDataURL()方法可以获取API异步读取的文件数据,另存为数据URL;
            //FileReader对象的readAsDataURL方法可以将读取到的文件编码成Data URL。Data URL是一项特殊的技术,可以将资料(例如图片)内嵌在网页之中,不用放到外部文件。
            imgReader.readAsDataURL(imgFile);
        }
    }
    //读取文件 onload事件
    imgReader.onload = function (evt) {
        console.log(evt);
        //将该URL绑定到img标签的src属性上,就可以实现图片的上传预览效果了。
        $("#img").attr("src", evt.target.result);
        var data = evt.target.result;
        debugger

        $('#Picture').val(data);

    };


controller层:


```java

//    上传图片
@ResponseBody
@RequestMapping("InsertStudent")
public void InsertStudent(MultipartFile fileStudentImage, Integer id) throws IOException {
    if(fileStudentImage != null){
        System.out.println(fileStudentImage);
        BASE64Encoder base64Encoder =new BASE64Encoder();  //base64
        //将该字符串保存到数据库即可
        String baseimg = "data:" + fileStudentImage.getContentType()+";base64," + base64Encoder.encode(fileStudentImage.getBytes());
    
    }
}

java+html图片上传并将base64保存到数据库,怎样将var data = evt.target.result;的图片base64字节码传给后台并保存到数据库?


图片地址传后端就行了呀,可以参考下这个 http://t.csdn.cn/YTLgf

转码后的数据分块 到后端在合并

想要在 PyCharm 中连接数据库并显示相关提示,需要进行以下步骤:

  1. 在 PyCharm 中安装数据库连接库 在 PyCharm 中连接数据库,需要安装相应的数据库连接库。常用的数据库连接库包括 MySQL 和 PostgreSQL。 例如,对于 MySQL 连接库,可以使用以下命令安装: pip install mysql-connector-python

  2. 在 PyCharm 中创建数据库连接 在连接数据库之前,需要在 PyCharm 中创建相应的数据库连接。可以在 MySQL 官网中下载相应的连接库安装程序并按照提示进行安装。 例如,在 PyCharm 中创建 MySQL 数据库连接,可以使用以下命令: CREATE DATABASE database_name; USE database_name;

  3. 在 PyCharm 中创建表 在创建表之前,需要在 PyCharm 中创建相应的数据库连接。在创建数据库连接时,需要提供数据库名称、表名和列名等信息。 例如,对于 MySQL 数据库连接,在创建表时需要提供表名、列名和数据类型等信息,例如: CREATE TABLE images ( id INT(11) NOT NULL AUTO_INCREMENT, title VARCHAR(50) NOT NULL, url VARCHAR(50) NOT NULL, PRIMARY KEY (id), FOREIGN KEY (title) REFERENCES articles(title), FOREIGN KEY (url) REFERENCES articles(title) );

  4. 在 PyCharm 中连接数据库并查询数据 在完成上述步骤之后,可以在 PyCharm 中连接数据库并查询数据。在连接数据库时,需要提供数据库名称、表名和列名等信息。 例如,在 PyCharm 中连接 MySQL 数据库,查询表中的标题列,可以使用以下代码: ``` import mysql.connector

conn = mysql.connector.connect(user='user', password='password', host='localhost', database='database_name') cursor = conn.cursor()

cursor.execute("SELECT title FROM images") for row in cursor: print(row) ```

以上是连接数据库并显示相关提示的解决方案。需要注意的是,连接数据库并显示相关提示需要对数据库和 PyCharm 代码库有一定的了解,如果不熟悉相关语言和库,可能需要花费更多的时间和精力来学习和调试。