package a;
import java.awt.BorderLayout;
import java.util.ArrayList;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import org.apache.ftpserver.FtpServer;
import org.apache.ftpserver.FtpServerFactory;
import org.apache.ftpserver.ftplet.Authority;
import org.apache.ftpserver.listener.ListenerFactory;
import org.apache.ftpserver.usermanager.impl.BaseUser;
import org.apache.ftpserver.usermanager.impl.WritePermission;
public class Main extends JFrame {
public Main() throws Exception {
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
String dir = "c:\\";
JFileChooser jfc = new JFileChooser(dir);
jfc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
if (jfc.showOpenDialog(this) == 0) {
dir = jfc.getSelectedFile().getAbsolutePath();
}
JLabel jl = new JLabel(dir);
this.add(jl, BorderLayout.NORTH);
ArrayList<Authority> la = new ArrayList<Authority>();
WritePermission wp = new WritePermission();
BaseUser bu = new BaseUser();
ListenerFactory lf = new ListenerFactory();
FtpServerFactory fsf = new FtpServerFactory();
la.add(wp);
bu.setName("anonymous");
bu.setPassword(null);
bu.setHomeDirectory(dir);
bu.setAuthorities(la);
lf.setPort(21);
fsf.addListener("default", lf.createListener());
fsf.getUserManager().save(bu);
FtpServer fs = fsf.createServer();
fs.start();
}
public static void main(String[] args) throws Exception {
Main m = new Main();
m.setVisible(true);
}
}
javaftp1.7
最新推荐文章于 2024-04-25 16:58:38 发布