静态资源上传至远程ftp服务器,ftp工具类封装
2019-08-29 09:01:32来源:博客园 阅读 ()
静态资源上传至远程ftp服务器,ftp工具类封装
工具类,是一个单独的工程项目
提取必要信息至ftp.properties配置文件中
ftp_host=192.168.110.128 ftp_port=21 ftp_username=ftpuser ftp_password=ftpuser ftp_dir=/home/ftpuser/jd ftp_url=http://www.images.com
封装FtpUtils工具类
public class FtpUtils { private static String ftp_host = null; private static String ftp_port = null; private static String ftp_username = null; private static String ftp_password = null; private static String ftp_dir = null; private static String ftp_url = null; //1、封装参数 static{ InputStream ris = FtpUtils.class.getClassLoader().getResourceAsStream("ftp.properties"); Properties pp = new Properties(); try { pp.load(ris); ftp_host = pp.getProperty("ftp_host"); ftp_port = pp.getProperty("ftp_port"); ftp_username = pp.getProperty("ftp_username"); ftp_password = pp.getProperty("ftp_password"); ftp_dir = pp.getProperty("ftp_dir"); ftp_url = pp.getProperty("ftp_url"); } catch (IOException e) { e.printStackTrace(); } } /**** * 实现建文件上传到静态资源服务器 */ public static String uploadFile(String remote,InputStream local) { try { //创建FTPClient对象 FTPClient client=new FTPClient(); //建立和ftp服务的链接 client.connect(ftp_host, Integer.parseInt(ftp_port)); //身份验证 client.login(ftp_username, ftp_password); //设置上传的文件类型 client.setFileType(FTP.BINARY_FILE_TYPE); //切换工作目录 if(!client.changeWorkingDirectory(ftp_dir)) { client.makeDirectory(ftp_dir); client.changeWorkingDirectory(ftp_dir); } //上传 client.storeFile(remote, local); }catch(Exception ex) { ex.printStackTrace(); } return ftp_url+"/jd/"+remote; } }
导入jar包版本:
<!-- ftpclient客户端 --> <!--ftp文件上传--> <dependency> <groupId>commons-net</groupId> <artifactId>commons-net</artifactId> <version>3.3</version> </dependency>
测试调用:
/** * 处理上传图片请求 */ @Override public Map<String, Object> uploadImageService(MultipartFile mf) { // TODO Auto-generated method stub HashMap<String, Object> map = new HashMap<>(); try { //文件重命名 String oldName = mf.getOriginalFilename(); String remote = IDUtils.genImageName()+oldName.substring(oldName.lastIndexOf(".")); String url = FtpUtils.uploadFile(remote, mf.getInputStream()); map.put("error", 0); map.put("url", url); } catch (IOException e) { // TODO Auto-generated catch block map.put("error", 1); map.put("message", "上传失败"); e.printStackTrace(); } return map; }
注:使用的是springboot,已经集成了ftp,所以没有配置相应的xml文件。
原文链接:https://www.cnblogs.com/ncl-960301-success/p/11421162.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:java字符串截取
- 国外程序员整理的Java资源大全(全部是干货) 2020-06-12
- 构建自己的jar包上传至Mvaen中央仓库和版本更新 2020-06-11
- 国外程序员整理的Java资源大全(全部是干货) 2020-06-09
- Java中jar包获取资源文件的方式 2020-06-05
- Idea实现SpringBoot外置Tomcat的Web项目热部署(包含静态文 2020-06-04
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash