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

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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

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

[html]view plaincopy

1.

2.

3.

4.

5.

上传操作方法:

[java]view plaincopy

1.public int doUpload() throws Exception {

2.

3. Map param = new HashMap();

4. ServletFileUpload servletFileUpload = new ServletFileUpload();

5. FileItemIterator itr = servletFileUpload.getItemIterator(mSGA.getCur

rentRequest());

6.while (itr.hasNext()) {

7. FileItemStream fi = itr.next();

8.if ("file".equals(fi.getFieldName())) {

9. InputStream is = fi.openStream();

10.byte[] b = FileCopyUtils.copyToByteArray(is); //FileCopyU

tils 为spring下的一个工具类。

11.if (b == null || b.length == 0) { return0; }

12. param.put("FILE", b);//此处所用的参数类型为 byte[]

13. }

14. }

15.

16.//////////各种参数放入param你懂得。。。。

17.

18.//dao 为个人封装的工具类。。。

19.

20. param.put("ID", dao.getSequence("SEQ_NAME"));

21.

22.return dao.insert("mapper_id", param);

23. }

mapper文件对应的sql设置

[html]view plaincopy

1.

2. INSERT INTO DEMO

3. (ID,FILE)

4. VALUES

5. (#{ID}, #{FILE,jdbcType=BLOB}) --此处需要加上jdbcType=BLOB

6.

通过MyBatis实现图片数据的存储与读取

开发环境:

Mybatis:3.0.5

MySQL:5.x

1. 数据库Scheme

--

-- Table structure for table `user_graphic_t`

--

DROP TABLE IF EXISTS `user_graphic_t`;

/*!40101 SET @saved_cs_client = @@character_set_client */;

/*!40101 SET character_set_client = utf8 */;

CREATE TABLE `user_graphic_t` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`graphic_data` blob,

PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=360 DEFAULT CHARSET=utf8;

/*!40101 SET character_set_client = @saved_cs_client */;

2. Mapper文件

id,graphic_data

INSERT INTO user_graphic_t (

)

values (

#{id},,#{graphicData}

)

3. 映射VO:

public class UserGraphicVo {

private Long id;

private byte[] graphicData;

//get/set方法

}

4. DAO层调用

相关文档
最新文档