| 代码如下 | 复制代码 |
/** * 将文件上传到服务器 * * @param filePath * 文件路径 * @param channelSftp * channelSftp对象 * @return */ publicstaticbooleanuploadFile(String filePath, ChannelSftp channelSftp) { OutputStream outstream =null; InputStream instream =null; booleansuccessFlag =false; try{ File isfile =newFile(filePath); if(isfile.isFile()) { outstream = channelSftp.put(isfile.getName()); File file =newFile(filePath); if(file.exists()) { instream =newFileInputStream(file); byteb[] =newbyte[1024]; intn; while((n = instream.read(b)) != -1) { outstream.write(b,0, n); } outstream.flush(); } successFlag =true; } }catch(Exception e) { e.printStackTrace(); }finally{ try{ if(instream !=null) { instream.close(); } if(outstream !=null) { outstream.close(); } }catch(IOException e) { e.printStackTrace(); } } returnsuccessFlag; } privatestaticSession initJschSession() throwsJSchException { intftpPort =0; String ftpHost =""; String port ="00";//sftp的端口号 String ftpUserName ="";//用户名 String ftpPassword ="";//链接的密码 String privateKey ="";// String passphrase =""; if(port !=null&& !port.equals("")) { ftpPort = Integer.valueOf(port); } JSch jsch =newJSch();// 创建JSch对象 if(StringUtils.isNotBlank(privateKey) && StringUtils.isNotBlank(passphrase)) { jsch.addIdentity(privateKey, passphrase); } if(StringUtils.isNotBlank(privateKey) && StringUtils.isBlank(passphrase)) { jsch.addIdentity(privateKey); } jsch.getSession(ftpUserName, ftpHost, ftpPort); Session session = jsch.getSession(ftpUserName, ftpHost, ftpPort);// 根据用户名,主机ip,端口获取一个Session对象 if(StringUtils.isNotBlank(ftpPassword)) { session.setPassword(ftpPassword);// 设置密码 } returnsession; } /** * 获取ChannelSftp链接 * * @param timeout * 超时时间 * @return 返回ChannelSftp对象 * @throws JSchException */ publicstaticChannelSftp getChannelSftp(Session session,inttimeout) throwsJSchException { Channel channel =null; Properties config =newProperties(); config.put("StrictHostKeyChecking","no"); session.setConfig(config);// 为Session对象设置properties session.setTimeout(timeout);// 设置timeout时间 session.connect();// 通过Session建立链接 channel = session.openChannel("sftp");// 打开SFTP通道 channel.connect();// 建立SFTP通道的连接 return(ChannelSftp) channel; } /** * 断开sftp链接 * * @param session * 会话 * @param channel * 通道 */ publicstaticvoidcloseConnection(Channel channel, Session session) { try{ if(session !=null) { session.disconnect();//关闭session链接 } if(channel !=null) { channel.disconnect();//断开连接 } }catch(Exception e) { e.printStackTrace(); } } | |
疯狂医院达什医生中文版(Crazy Hospital)
疯狂医院达什医生最新版是一款医院模拟经营类游戏,逼真的场景画
宝宝庄园官方版
宝宝庄园官方版是一款超级经典好玩的模拟经营类型的手游,这个游
桃源记官方正版
桃源记是一款休闲娱乐类的水墨手绘风格打造的模拟经营手游。玩家
长途巴士模拟器手机版
长途巴士模拟器汉化版是一款十分比真好玩的大巴车模拟驾驶运营类
房东模拟器最新版2024
房东模拟器中文版是一个超级有趣的模拟经营类型的手游,这个游戏