Home > System Tutorial > LINUX > How to upload files to image server in Tomcat container on Linux

How to upload files to image server in Tomcat container on Linux

WBOY
Release: 2024-07-11 18:35:53
Original
1067 people have browsed it

如何在 Linux 上的 Tomcat 容器中上传文件到图片服务器

A recent project requirement is to upload files to a picture serverlinux system upload files, the picture server is a tomcat container deployed on linuxlinux system upload files, not much to say about linux e-books, Just upload the code

One tool can do it:

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.apache.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;
}
}
Copy after login

linux系统上传文件_linux系统上传文件_linux系统上传文件

boolean bh = FtpUtil.uploadFile("服务器IP",
端口号,"服务器账号","服务器密码",
"/data/wwes/sbsm/map/html/",FilePath,hFileName,hFileInputStream);
Copy after login

Above: basePath: basic path of server file storage

FilePath: The file path dynamically spliced ​​in front of the basic path (different files can be set to be stored in different folders as needed)

hFileName: File name (the file can be customized according to your needs)

hFileInputStream: Input stream for file upload, passed

InputStream hFileInputStream = hFile.getInputStream();获取
Copy after login

Return: true If the file is uploaded successfully, you can view the uploaded file in the corresponding directory in the image server on Linux

Don’t forget to like deepin linux, thank you!

The above is the detailed content of How to upload files to image server in Tomcat container on Linux. For more information, please follow other related articles on the PHP Chinese website!

source:itcool.net
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template