首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > VSTS >

apache VSF 操作种

2012-11-01 
apache VSF 操作类package com.biya.dao.jdbcpublic class VirtualFileSystemDAOImpl {private String ur

apache VSF 操作类

package com.biya.dao.jdbc;public class VirtualFileSystemDAOImpl {private String uri;private String userName;private String password;private boolean needAuth;// 是否需要用户认证private DefaultFileSystemManager mgr;private FileObject fo;private DefaultFileSystemManager getFileSystemManager() throws FileSystemException {if (mgr == null) {mgr = (DefaultFileSystemManager) VFS.getManager();//mgr.setCacheStrategy(CacheStrategy.ON_CALL);}return mgr;}public FileObject getFileObject(String path) throws FileSystemException {return getFileObject(path,true);}public FileObject getFileObject(String path,boolean includeUri) throws FileSystemException {if (this.needAuth) {StaticUserAuthenticator auth = new StaticUserAuthenticator(null, userName, password);FileSystemOptions opts = new FileSystemOptions();DefaultFileSystemConfigBuilder.getInstance().setUserAuthenticator(opts, auth);if (includeUri){fo = VFS.getManager().resolveFile(uri + path, opts);}else{fo = VFS.getManager().resolveFile("file://" + path, opts);}} else {if (includeUri){fo = this.getFileSystemManager().resolveFile(uri + path);}else{fo = VFS.getManager().resolveFile("file://" + path);}}return fo;}public void setNeedAuth(boolean needAuth) {this.needAuth = needAuth;}public void setUri(String uri) {this.uri = uri;}public void setUserName(String userName) {this.userName = userName;}public void setPassword(String password) {this.password = password;}public void copyFile(String sourcePath, String targetPath) throws FileSystemException {FileObject src = getFileObject(sourcePath);FileObject dest = getFileObject(targetPath);if (dest.exists() && dest.getType() == FileType.FOLDER) {dest = dest.resolveFile(src.getName().getBaseName());}dest.copyFrom(src, Selectors.SELECT_ALL);}public void createFile(FileItem fileItem, String targetPath) throws IOException {String sourcePath=System.getProperty("user.home")+ File.separator + "objecttype.gif";File file = new File( sourcePath);try {fileItem.write(file);} catch (Exception ex) {ex.printStackTrace();}FileObject src = getFileObject(sourcePath,false);FileObject dest = getFileObject(targetPath);dest.createFile();if (dest.isWriteable()){dest.copyFrom(src, Selectors.SELECT_ALL);}}public void moveFile(String sourcePath, String targetPath) throws FileSystemException {copyFile(sourcePath, targetPath);removeFile(sourcePath);}public void removeFile(String sourcePath) throws FileSystemException {FileObject file = getFileObject(sourcePath);file.delete(Selectors.SELECT_SELF);}}

热点排行