LinuxEye - Linux系统教程

LinuxEye - Linux系统教程

当前位置: 主页 > 脚本编程 >

Java嵌入式FTP server

时间:2012-06-02 10:41来源:未知 编辑:admin 点击:
FTP server的有点可靠和高效的传输数据,嵌入式FTP server的用途大家可以想想,我一般用来监控文件上传、下载事件,方便、轻量,贴出关键代码 /** * FTP Server 启动 */ public void start() { Ft
      FTP server的有点可靠和高效的传输数据,嵌入式FTP server的用途大家可以想想,我一般用来监控文件上传、下载事件,方便、轻量,贴出关键代码
/**
    * FTP Server 启动
    */
   public void start() {
       FtpServerFactory serverFactory = new FtpServerFactory();

       ListenerFactory factory = new ListenerFactory();

       // set the port of the listener
       factory.setPort(21);
       if (LOG.isInfoEnabled()) {
           LOG.info("----------------Ftp server 端口21----------------------------");
       }
       // replace the default listener
       serverFactory.addListener("default", factory.createListener());

       //设置用户配置信息
       PropertiesUserManagerFactory userManagerFactory = new PropertiesUserManagerFactory();
       userManagerFactory.setFile(SysConfig.getInstance().getConfigFile());


       if (LOG.isInfoEnabled()) {
           LOG.info("----------------Ftp server 设置用户配置信息----------------------------");
       }
       //注册FTP事件监听
       Map<String, Ftplet> ftplets = new LinkedHashMap<String, Ftplet>();
       ftplets.put(FtpletNotification.class.getName(), new FtpletNotification());
       serverFactory.setFtplets(ftplets);
       if (LOG.isInfoEnabled()) {
           LOG.info("----------------Ftp server 注册FTP事件监听----------------------------");
       }
       serverFactory.setUserManager(userManagerFactory.createUserManager());
       if (LOG.isInfoEnabled()) {
           LOG.info("----------------Ftp server 准备启动----------------------------");
       }
       // start the server
       server = serverFactory.createServer();
       try {
           server.start();
           port = serverFactory.getListener("default").getPort();
           serverAddress = serverFactory.getListener("default").getServerAddress();
           if(serverAddress == null) {
               try {
                   serverAddress= InetAddress.getLocalHost().getHostAddress();
               } catch (UnknownHostException e) {
                   e.printStackTrace();
               }
           }
           if (LOG.isInfoEnabled()) {
               LOG.info("----------------Ftp serverAddress----------------------------" + serverAddress);
           }
           if (LOG.isInfoEnabled()) {
               LOG.info("----------------Ftp server 启动成功----------------------------");
           }
       } catch (FtpException e) {
           e.printStackTrace();
           if (LOG.isErrorEnabled()) {
               LOG.error("FTP server 启动失败 ", e);
           }
       }
   }

转载请保留固定链接: https://linuxeye.com/program/526.html

------分隔线----------------------------
标签:javaftp
栏目列表
推荐内容