java怎么从linux服务器下载文件
发表于:2025-11-09 作者:千家信息网编辑
千家信息网最后更新 2025年11月09日,这篇文章主要介绍"java怎么从linux服务器下载文件"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"java怎么从linux服务器下载文件"文章能帮助大家解
千家信息网最后更新 2025年11月09日java怎么从linux服务器下载文件
这篇文章主要介绍"java怎么从linux服务器下载文件"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"java怎么从linux服务器下载文件"文章能帮助大家解决问题。
一、前端代码
1、html代码
项目文件
合同
计划说明书
风险说明书
服务协议
2、js代码
//获取文件,主要是从数据库获取到:文件名、文件路径 function getProjectFiles(type) { var fileParam = { pageNo: 1, pageSize: 10, xmId: ${detail[0]["项目ID"]}, cxlx: type, }; $.ajax({ url: "/prod/getProjectFiles", type: "POST", data: fileParam, dataType: "JSON", success: function (ret) { if (ret && ret['code'] > 0) { debugger //渲染界面 var dataList = ret['list']; download(dataList[0]["附件名"],dataList[0]["附件路径"]); } } }) }//下载文件,调用后端接口 function download(fileName,filePath){ window.open("/downloadTwo?fileName="+encodeURI(fileName)+"&downUrl="+filePath); return ; }3、css样式
前端的所有样式都是使用layui架构的。
二、后台代码
1、获取文件
主要是,调用存储过程,去数据库获取文件名和文件路径,后面用于下载。
/** * 获取项目文件 * I_CXLX IN NUMBER, --查询类型 1|信托合同 2|信托计划说明书3|认购风险说明书 5|隐私协议|6用户服务协议 * I_XSXM IN NUMBER --发行方案id * @param request * @param response * @param modelMap * @return */ @RequestMapping(value = "/getProjectFiles",method = RequestMethod.POST) @ResponseBody public DataResultSet getProjectFiles(HttpServletRequest request, HttpServletResponse response, ModelMap modelMap){ int pageNo = ParamUtils.getInt(request, "pageNo", 1); // 页码 int pageSize = ParamUtils.getInt(request, "pageSize", 10); // 取得显示条数 String cxlx = ParamUtils.getString(request, "cxlx", ""); // 查查询类型 1|信托合同 2|信托计划说明书3|认购风险说明书 5|隐私协议|6用户服务协议 String xmId = ParamUtils.getString(request, "xmId", ""); //发行方案id DataResultSet productHistory = prodService.getProjectFiles(pageNo,pageSize,cxlx,xmId); return productHistory; }2、开始下载
/** * 附件下载 * * @param request * @param response */ @RequestMapping("/downloadTwo") public void downloadFileTwo( HttpServletRequest request, HttpServletResponse response) { String fileName = request.getParameter("fileName"); String downUrl = request.getParameter("downUrl"); goToDownload(request, response, downUrl, fileName); } /** * 下载 * * @param request * @param response * @param downUrl 下载的路径 * @param fjmc 下载文件的名称 */ private void goToDownload(HttpServletRequest request, HttpServletResponse response, String downUrl, String fjmc) { response.setCharacterEncoding("UTF-8"); response.setContentType("application/x-msdownload"); try { String encodenickname = URLEncoder.encode(fjmc,"UTF-8");//转Unicode不然ie会乱码 response.setHeader("Content-Disposition", "attachment;fileName=" + new String(encodenickname.getBytes("UTF-8"), "ISO8859-1")); //这里注掉的代码是本地测试的// String path = request.getSession().getServletContext().getRealPath("/");// String ATTACH_PATH= AppConfig.getInstance().getProperty("attach.base","");// if (StringUtils.isNotEmpty(ATTACH_PATH)) {// path = ATTACH_PATH;// }// logger.debug("=path===" + path); File file = new File( downUrl); if (!file.exists()) { response.sendError(404, "File not found!"); return; } long fileLength = file.length(); response.setHeader("Content-Length", String.valueOf(fileLength)); BufferedInputStream bis = new BufferedInputStream(new FileInputStream(file)); BufferedOutputStream bos = new BufferedOutputStream(response.getOutputStream()); byte[] buff = new byte[2048]; int bytesRead; while (-1 != (bytesRead = bis.read(buff, 0, buff.length))) { bos.write(buff, 0, bytesRead); } bis.close(); bos.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } }三、效果
直接点击文件图片或者文件,就可以下载。
关于"java怎么从linux服务器下载文件"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注行业资讯频道,小编每天都会为大家更新不同的知识点。
文件
服务
说明书
代码
信托
路径
服务器
合同
知识
附件
项目
风险
UTF-8
前端
数据
数据库
文件名
方案
样式
用户
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络技术现状和发展趋势
北京工行软件开发中心地点
监控服务器架设
美国法医数据库
数据库加一列代码
软件开发合同付款方式
cp管理服务器
服务器上用的nic卡有哪些
计算机网络技术与应用的课件
sci finder 数据库
利用数据库实现软件授权
数据库基础知识培训
迎梦服务器
网络安全攻击主要分为哪五种
盐城众安源网络技术有限公司
张超网络技术有限公司
安全模式下无法连接服务器
嵌入式web服务器在哪里
定制软件开发行业发展
联想服务器 150
怎样建数据库
华为服务器型号尺寸
网络安全方面题库
中印软件开发人员人数
网络安全提案登记表
服务器某个端口最大连接数
赣州公安局网络安全工程师
淘宝网数据库技术
电脑软件开发薪水
幼儿网络安全图片简笔画