• 大小: 6.18MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-09-24
  • 语言: Java
  • 标签: 网盘  网盘代码  云盘  

资源简介

java网盘项目的源代码 部署即可运行。

资源截图

代码片段和文件信息

package controller;

import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import model.Message;
import model.MyDiskInfo;
import model.MyFile;
import model.User;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.multipart.MultipartFile;

import util.DaoSupport;
import util.DownloadSupport;
import util.FileStorage;
import util.UploadHelper;

import com.alibaba.fastjson.JSON;

import dao.DeleteFileTransaction;
import dao.MessageDao;
import dao.MoveFileTransaction;
import dao.MyDiskInfoDao;
import dao.MyFileDao;
import dao.UploadTransaction;

@Controller
@RequestMapping(“/home“)
public class DiskController extends Support{
private static final String FILEbasePATH = FileStorage.getFilePath();

/**
 * 列出文件夹的内的所有子文件
 * @param id
 * @return
 */
@RequestMapping(“/list_myfile“)
@ResponseBody
public  String listFiles(long idString pwd){
MyFile folder = MyFileDao.getMyFile(id);
List myFiles = null;

if(folder.getIsLock() == 1){
if(folder.getPassword().equals(pwd)){
myFiles = MyFileDao.getFilesByFolderId(id);
}else{
return “fail“;
}
}else{
myFiles = MyFileDao.getFilesByFolderId(id);
}
return JSON.toJSONString(myFiles);
}

/**
 * 上传文件
 * @param request
 * @param folderid
 * @return
 */
@RequestMapping(“/upload/{folderid}“)
@ResponseBody
public String upload(HttpServletRequest request@PathVariable long folderid){
UploadHelper upload = new UploadHelper();
MultipartFile file = upload.getFiles(request).get(0);

String result = “fail“;
String fileName = file.getOriginalFilename();
String suffix = fileName.substring(fileName.lastIndexOf(“.“)+1);

User user = (User) session.getAttribute(“user“);

MyFile myFile = new MyFile();
myFile.setUser_id(user.getId());
myFile.setSize(file.getSize());

if(MyDiskInfoDao.isEnoughSpace(myFile)){
String filePath = FILEbasePATH + new Date().getTime() + “.“ + suffix;

//String filePath = session.getServletContext().getRealPath(“FILE“) +“/“+ new Date().getTime() + “.“ + suffix;
try {
upload.upload(file filePath);//文件没有成功保存返回失败信息

SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-MM-dd“);

myFile.setCreateDate(sdf.format(new Date()));
myFile.setName(fileName);
myFile.setParent_id(folderid);
myFile.setType(suffix.toLowerCase());
myFile.setPath(MyFileDao.getPath(folderid)+folderid+“/“);
myFile.setLocation(filePath);
myFile.setIsShare(0);
myFile.setDescription(

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2013-06-14 09:03  networkdisk\
     目录           0  2013-06-14 09:03  networkdisk\networkdisk\
     文件         649  2013-06-14 09:03  networkdisk\networkdisk\.classpath
     文件        1044  2013-06-14 09:03  networkdisk\networkdisk\.project
     目录           0  2013-06-14 09:03  networkdisk\networkdisk\.settings\
     文件         491  2013-06-14 09:03  networkdisk\networkdisk\.settings\.jsdtscope
     文件          57  2013-06-14 09:03  networkdisk\networkdisk\.settings\org.eclipse.core.resources.prefs
     文件         587  2013-06-14 09:03  networkdisk\networkdisk\.settings\org.eclipse.jdt.core.prefs
     文件         112  2013-06-14 09:03  networkdisk\networkdisk\.settings\org.eclipse.jst.j2ee.ejb.annotations.xdoclet.prefs
     文件         563  2013-06-14 09:03  networkdisk\networkdisk\.settings\org.eclipse.wst.common.component
     文件         296  2013-06-14 09:03  networkdisk\networkdisk\.settings\org.eclipse.wst.common.project.facet.core.xml
     文件          49  2013-06-14 09:03  networkdisk\networkdisk\.settings\org.eclipse.wst.jsdt.ui.superType.container
     文件           6  2013-06-14 09:03  networkdisk\networkdisk\.settings\org.eclipse.wst.jsdt.ui.superType.name
     目录           0  2013-06-14 09:03  networkdisk\networkdisk\ImportedClasses\
     目录           0  2013-06-14 09:03  networkdisk\networkdisk\ImportedClasses\controller\
     文件       10205  2013-06-14 09:03  networkdisk\networkdisk\ImportedClasses\controller\DiskController.class
     文件        1944  2013-06-14 09:03  networkdisk\networkdisk\ImportedClasses\controller\LoginController.class
     文件        2136  2013-06-14 09:03  networkdisk\networkdisk\ImportedClasses\controller\RegisterController.class
     文件        2478  2013-06-14 09:03  networkdisk\networkdisk\ImportedClasses\controller\ShareController.class
     文件         420  2013-06-14 09:03  networkdisk\networkdisk\ImportedClasses\controller\Support.class
     文件        5024  2013-06-14 09:03  networkdisk\networkdisk\ImportedClasses\controller\UserSettingController.class
     目录           0  2013-06-14 09:03  networkdisk\networkdisk\ImportedClasses\dao\
     文件        3381  2013-06-14 09:03  networkdisk\networkdisk\ImportedClasses\dao\DeleteFileTransaction.class
     文件         819  2013-06-14 09:03  networkdisk\networkdisk\ImportedClasses\dao\MessageDao.class
     文件        2102  2013-06-14 09:03  networkdisk\networkdisk\ImportedClasses\dao\MoveFileTransaction.class
     文件        1397  2013-06-14 09:03  networkdisk\networkdisk\ImportedClasses\dao\MyDiskInfoDao.class
     文件        1281  2013-06-14 09:03  networkdisk\networkdisk\ImportedClasses\dao\MyDiskInfoDaoTest.class
     文件        4319  2013-06-14 09:03  networkdisk\networkdisk\ImportedClasses\dao\MyFileDao.class
     文件        1602  2013-06-14 09:03  networkdisk\networkdisk\ImportedClasses\dao\MyFileDaoTest.class
     文件        3167  2013-06-14 09:03  networkdisk\networkdisk\ImportedClasses\dao\RegisterTransaction.class
     文件        2475  2013-06-14 09:03  networkdisk\networkdisk\ImportedClasses\dao\UploadTransaction.class
............此处省略385个文件信息

评论

共有 条评论