JAVA文件下载(2)

来源:互联网 发布:c语言编程软件电脑版 编辑:程序博客网 时间:2024/06/05 11:35

数据库文件表结构:

CREATE TABLE `meeting_file` (  `ID` varchar(50) NOT NULL,  `MId` varchar(100) DEFAULT NULL,  `RealPath` varchar(200) DEFAULT NULL,  `FileType` varchar(10) DEFAULT NULL,  `FileFlag` varchar(10) DEFAULT NULL,  `URLpath` varchar(100) DEFAULT NULL COMMENT '文件发布邮件地址',  `CreatTime` datetime DEFAULT NULL COMMENT '文件创建的时间',  `StartTime` datetime DEFAULT NULL COMMENT '可以下载的文件时间',  `EndTtime` datetime DEFAULT NULL COMMENT '可以下载的结束时间',  `UpdateTime` datetime DEFAULT NULL,  `UId` varchar(50) DEFAULT NULL,  `FileName` varchar(50) DEFAULT NULL,  PRIMARY KEY (`ID`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='会议文件附件表';

JAVA类:

public void doDownFile(final HttpServletRequest request,            HttpServletResponse response) throws Exception {        MeetingFile meetingFile = fileDomain.get(request.getParameter("id"));        File file = new File(meetingFile.getRealPath());        if (!file.exists()) {            throw new HHBusinessException("File not found!");        }                response.setContentType("application/x-msdownload");        response.setHeader("Content-Disposition", "attachment; filename=" + URLEncoder.encode(meetingFile.getFileName(), "UTF-8"));        BufferedInputStream br = new BufferedInputStream(new FileInputStream(file));        OutputStream out = response.getOutputStream();                byte[] buf = new byte[1024];        int len = 0;        while ((len = br.read(buf)) > 0)            out.write(buf, 0, len);        br.close();        out.close();    }



0 0