基于Spring框架的文件下载
来源:互联网 发布:快递怎么延长收货 淘宝 编辑:程序博客网 时间:2024/06/05 06:57
闲话不多说直接上代码
Controller
@RequestMapping(value = "/download", method = RequestMethod.GET)public void download(@ModelAttribute("glpLanguageFileDTO")GLPLanguageFileDTO glpLanguageFileDTO,HttpServletResponse response) throws GLPBusinessException, IOException {//设置文件名字(可自由发挥)String name=glpLanguageFileDTO.getLanguageFileType().toLowerCase()+"_"+glpLanguageFileDTO.getLanguageIsoCode()+".properties";//若需要生成临时文件可指定路径,则FileOutputStream(name)和FileInputStream(name)中的"name"替换成"path"//String path="\\\\VATPDDSCH-02\\FileServer\\Registration\\TOC_GSO\\"+name;response.setContentType("multipart/form-data"); //为properties添加注释response.setHeader("Content-Disposition", "attachment;fileName="+name);ServletOutputStream out; //从数据库中查出相关的数据到Properties 类中Properties prop = glpLanguageService.downloadStandardFile(glpLanguageFileDTO);//保存文件FileOutputStream outputStream = new FileOutputStream(name);prop.store(outputStream, name);outputStream.close();//读取文件FileInputStream inputStream = new FileInputStream(name);out = response.getOutputStream(); int b = 0; byte[] buffer=new byte[inputStream.available()]; while ((b=inputStream.read(buffer))!=-1){ //写到输出流(out)中 out.write(buffer,0,b); } inputStream.close(); out.close(); out.flush();}
GLPLanguageService类
生成Properties,(可根据自己需要的文件进行编写)此处我用的事Properties文件
private PropertiesPersister propertiesPersister = new DefaultPropertiesPersister();@Overridepublic Properties downloadStandardFile(GLPLanguageFileDTO glpLanguageFileDTO)throws GLPBusinessException {Properties props = new Properties();try {GLPLanguageFile glpLanguages=glpLanguageDao.getGLPLanguageFileByTypeAndIso(glpLanguageFileDTO.getLanguageFileType(), glpLanguageFileDTO.getLanguageIsoCode()).get(0);InputStream is =new ByteArrayInputStream(glpLanguages.getLanguageContent());propertiesPersister.load(props, is);} catch (SQLException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}return props;}
0 0
- 基于Spring框架的文件下载
- 基于springMvc框架下的文件下载
- 基于struts框架的文件上传与下载代码
- 一个基于Retrofit的单文件上传、下载框架
- 下载最新的spring框架
- 文件上传--基于Spring MVC框架+SmartUpload
- java基于spring框架上传文件
- 基于servlet的文件下载
- 基于servlet的文件下载
- 基于servlet的文件下载
- 基于servlet的文件下载
- 基于Struts的文件下载
- 基于servlet的文件下载
- spring框架下的文件(常用的文件为excel)下载总结
- 不依赖框架的文件下载
- Android-- 基于http的文件下载开源框架file-downloader
- spring mvc 文件的下载
- Spring MVC的文件下载
- 从头认识java-18.2 基本的线程机制(1)-再识多线程-2
- spring注解(转载,自己学习)
- C Primer Plus4-7
- 锁机制
- android studio编码格式设置
- 基于Spring框架的文件下载
- linux常用命令
- ehci ohci uhci解释
- redis主从复制过程中,slave端混读PING命令的问题
- MD5加密
- C Primer Plus5-1
- 以太坊智能合约编程之菜鸟教程
- [1,2,3].forEach(alert);这种写法有什么利和弊吗?
- C Primer Plus5-2