java怎么从linux服务器下载文件
发表于:2024-11-22 作者:千家信息网编辑
千家信息网最后更新 2024年11月22日,这篇文章主要介绍"java怎么从linux服务器下载文件"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"java怎么从linux服务器下载文件"文章能帮助大家解
千家信息网最后更新 2024年11月22日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安全错误
数据库的锁怎样保障安全
数据库课后答案五六章
河南工业软件开发大概要多少钱
黑色沙漠艾尔比亚服务器
swift软件开发文档
数据库硕士
sql数据库的访问速度
共青团网络安全宣传活动方案
网络安全卫士如何处理
web静态文件服务器
软件开发上海招聘
网络安全相关文章发表
excel sql 导入数据库
网络技术证书怎么考
ad域控对企业网络安全
ptl系统服务器
Gis生态网络安全构建
数据库制作公司
数据库与网页交互的好处
新乡市微帮网络技术有限公司
互联网科技的名词含义
华为服务器操作系统叫啥
岗位培训软件开发怎么样
天津专业网络技术
软件开发中ot是什么意思
16核服务器配置怎么看
中国网络安全法定义
校友数据库问题定义
关于网络安全的人物
三维模型数据存储到数据库
微信被网络安全员攻击