最近一个项目的需求是将文件上传到图片服务器linux系统上传文件,图片服务器是布置在linux上的tomcat容器linux系统上传文件,不多说linux 直接上代码的电子书
一个工具类可以完成:
package com.supermap.sbsm.util; import com.jcraft.jsch.Channel; import com.jcraft.jsch.ChannelSftp; import com.jcraft.jsch.JSch; import com.jcraft.jsch.Session; import org.<a style="color:#f60; text-decoration:underline;" href="https://www.php.cn/zt/15972.html" target="_blank">apache</a>.commons.net.ftp.*; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.net.SocketException; import java.util.Properties; import java.io.IOException; /** * @Author: zhangweixia * @Description: 创建服务器连接 * @Date:Created in 10:29 2020/6/24 * @Modified: */ public class FtpUtil { private static ChannelSftp sftp = null; /** * Description: 将文件上传到FTP服务器上 * @param host FTP服务器ip * @param port FTP服务器端口 * @param username FTP登录账号 * @param password FTP登录密码 * @param basePath FTP服务器基本目录,/home/ftpuser/images * @param filePath 存储FTP服务器文件的路径。比如分日期存放:/2018/05/28。basePath是文件的路径 filePath * @param filename 上传到FTP服务器的文件名 * @param input 输入流 * @return 成功返回true,否则,返回false */ public static boolean uploadFile(String host, int port, String username, String password, String basePath, String filePath, String filename, InputStream input) { boolean result = false; FTPClient ftp = new FTPClient(); File file=null; try { JSch jsch = new JSch(); ///获取sshsession账号-ip-端口 Session sshSession = jsch.getSession(username, host, port); ///添加密码 sshSession.setPassword(password); Properties sshConfig = new Properties(); ///严格检查主机密钥检查 sshConfig.put("StrictHostKeyChecking", "no"); sshSession.setConfig(sshConfig); //打开sshsession链接 sshSession.connect(); ///获得sftp通道 Channel channel = sshSession.openChannel("sftp"); //开启 channel.connect(); sftp = (ChannelSftp) channel; file=new File(basePath filePath); ///设置为被动模式 ftp.enterLocalPassiveMode(); ///设置上传文件的类型为二进制类型 //进入上传目录,然后上传文件 sftp.cd(basePath filePath); sftp.put(input,filename); input.close(); result = true; } catch (IOException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } finally { if (ftp.isConnected()) { try { ftp.disconnect(); } catch (IOException ioe) { } } } return result; } }
boolean bh = FtpUtil.uploadFile("服务器IP", 端口号,"服务器账号","服务器密码", "/data/wwes/sbsm/map/html/",FilePath,hFileName,hFileInputStream);
上述:basePath:存储服务器文件的基本路径
FilePath:动态拼接在基本路径前的文件路径(可根据需要将不同的文件存储在不同的文件夹下)
hFileName:文件名称(可根据需要定制命名文件)
hFileInputStream:通过文件上传的输入流
InputStream hFileInputStream = hFile.getInputStream();获取
返回:如果true文件上传成功,您可以在linux上图片服务器的相应目录下查看已上传的文件
别忘了点赞deepinin linux,感谢!
以上就是如何在这里 Linux 上的 Tomcat 将文件上传到图片服务器的详细内容,请关注其他相关文章!
紧急重启3389端口服务器,保障服务稳定运行!
如何在 Linux 上的 Tomcat 将文件上传到图片服务器中-LINUX
Python系统命令执行的四种方法-LINUX
linux 文件权限分析-LINUX
揭秘服务器核心:稳定、高效、支撑数字世界!
Java框架如何提供统一的异常处理机制?-java教程
Powerful Backups: Essential, Effective, Easy发音为:pauərfʊl bækʌps: ɛsɛnʃəl, ɛfɛktɪv, iːzi这个标题简洁明了,强调了备份的重要性、有效性和易用性,符合您要求的有说服力的语气,且未使用双引号或超过20字。
Python系统命令执行的四种方法-LINUX
linux 文件权限分析-LINUX
Java框架如何提供统一的异常处理机制?-java教程
Java框架符合现代网络安全标准吗?-java教程
Java框架如何促进代码的多样性-java教程
Java框架如何处理并发异常-java教程
Java框架和其他框架的性能如何?-java教程
Java框架在敏捷开发中的作用是什么?-java教程
Java框架在微服务架构中如何支持异步编程?-java教程
Java框架中的异常处理如何影响性能?-java教程
Java框架开发的应用程序吞吐量有什么提高?-java教程
Unihertz Jelly Max 小屏幕手机预热:天竺 7300 4000mah处理器 电池 66W 快充-IT行业