上传文件通过mybatis存储到数据库的BLOB格式中

来源:互联网 发布:国内租车公司排名 知乎 编辑:程序博客网 时间:2024/06/05 11:50

邋遢熊-DOWDYBEAR

HTML  页面 需要设置一个文件框

<form enctype="multipart/form-data">  <input type="file" name="file" /></form>


上传操作方法:

    public int doUpload() throws Exception {        Map<String, Object> param = new HashMap<String,Object>();        ServletFileUpload servletFileUpload = new ServletFileUpload();        FileItemIterator itr = servletFileUpload.getItemIterator(mSGA.getCurrentRequest());        while (itr.hasNext()) {            FileItemStream fi = itr.next();            if ("file".equals(fi.getFieldName())) {                InputStream is = fi.openStream();                byte[] b = FileCopyUtils.copyToByteArray(is);    //FileCopyUtils   为spring下的一个工具类。                if (b == null || b.length == 0) { return 0; }                param.put("FILE", b);//此处所用的参数类型为 byte[]            }        }//////////各种参数放入param你懂得。。。。//dao 为个人封装的工具类。。。        param.put("ID", dao.getSequence("SEQ_NAME"));        return dao.insert("mapper_id", param);    }


mapper文件对应的sql设置

    <insert id="mapper_id" parameterType="Map">        INSERT INTO DEMO        (ID,FILE)        VALUES        (#{ID}, #{FILE,jdbcType=BLOB}) --此处需要加上jdbcType=BLOB    </insert>


原创粉丝点击