JavaWeb操作hadoop2.6 HDFS从页面上传,,列表展示的demo
使用springmvc+mybatis从页面进行hadoop2.6 HDFS文件系统的上传,下载和列表展示的Demo希望对大家有用。
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2015-12-01 15:02 HDFSWeb
文件 886 2015-12-01 14:57 HDFSWeb.classpath
文件 1040 2015-11-27 11:37 HDFSWeb.project
目录 0 2015-12-01 15:02 HDFSWeb.settings
文件 503 2015-11-27 11:37 HDFSWeb.settings.jsdtscope
文件 364 2015-11-27 11:37 HDFSWeb.settingsorg.eclipse.jdt.core.prefs
文件 550 2015-12-01 14:57 HDFSWeb.settingsorg.eclipse.wst.common.component
文件 345 2015-11-27 11:37 HDFSWeb.settingsorg.eclipse.wst.common.project.facet.core.xml
文件 49 2015-11-27 11:37 HDFSWeb.settingsorg.eclipse.wst.jsdt.ui.superType.container
文件 6 2015-11-27 11:37 HDFSWeb.settingsorg.eclipse.wst.jsdt.ui.superType.name
目录 0 2015-12-01 15:02 HDFSWebuild
目录 0 2015-12-01 15:02 HDFSWebuildclasses
文件 2965 2015-12-01 14:57 HDFSWebuildclasseseans.xml
目录 0 2015-12-01 15:02 HDFSWebuildclassescn
目录 0 2015-12-01 15:02 HDFSWebuildclassescndemo
目录 0 2015-12-01 15:02 HDFSWebuildclassescndemocontroller
文件 8196 2015-12-01 15:00 HDFSWebuildclassescndemocontrollerFileController.class
目录 0 2015-12-01 14:59 HDFSWebuildclassescndemodao
目录 0 2015-12-01 15:02 HDFSWebuildclassescndemodomain
文件 2278 2015-12-01 14:57 HDFSWebuildclassescndemodomainFileBean.class
文件 925 2015-12-01 14:57 HDFSWebuildclassescndemodomainResFile.class
文件 215 2015-12-01 14:57 HDFSWebuildclassescndemodomainResFileMapper.xml
目录 0 2015-12-01 15:02 HDFSWebuildclassescndemoservice
文件 664 2015-12-01 15:00 HDFSWebuildclassescndemoserviceFileServiceImpl.class
文件 181 2015-12-01 14:57 HDFSWebuildclassescndemoserviceIFileService.class
文件 1197 2015-12-01 14:57 HDFSWebuildclassescore-site.xml
文件 2440 2015-12-01 14:57 HDFSWebuildclasseshdfs-site.xml
文件 158 2015-12-01 14:57 HDFSWebuildclassesjdbc.properties
文件 663 2015-12-01 14:57 HDFSWebuildclasseslog4j.properties
文件 1599 2015-12-01 14:57 HDFSWebuildclassesspringmvc.xml
文件 538 2015-12-01 14:57 HDFSWebuildclassessqlMapConfig.xml
............此处省略134个文件信息
package cn.demo.controller;
import java.io.BufferedOutputStream;
import java.io.ByteArrayInputStream;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.URI;
import java.net.URISyntaxException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.UUID;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataInputStream;
import org.apache.hadoop.fs.FSDataOutputStream;
import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IOUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.multipart.commons.CommonsMultipartFile;
import org.springframework.web.multipart.commons.CommonsMultipartResolver;
import cn.demo.domain.FileBean;
import cn.demo.service.IFileService;
@Controller
@RequestMapping(“/file“)
public class FileController {
@Autowired
private IFileService fileService;
//使用springMVC解析器进行文件上传
@RequestMapping(“/uploadToHDFS2.action“)
public String uploadToHDFS2(HttpServletRequest requestHttpServletResponse response) throws IllegalStateException IOException Exception URISyntaxException{
//创建一个通用的多部分解析器
CommonsMultipartResolver multipartResolver = new CommonsMultipartResolver(request.getSession().getServletContext());
if(multipartResolver.isMultipart(request)){
//转换成多部分request
MultipartHttpServletRequest multiRequest = (MultipartHttpServletRequest)request;
//取得request中的所有文件名
Iterator iter = multiRequest.getFileNames();
while(iter.hasNext()){
//取得上传文件
MultipartFile file = multiRequest.getFile(iter.next());
if(file != null){
//取得当前上传文件的文件名称
String myFileName = file.getOriginalFilename();
//如果名称不为“”说明该文件存在,否则说明该文件不存在
if(myFileName.trim() !=““){
System.out.println(“======>“+myFileName);
//文件名
String fileName = file.getOriginalFilename();
String filePath = “/1127/“+fileName;
//--------------------------------------------
//上传到hdfs
Configuration configuration = new Configuration();
configuration.addResource(“/core-site.xml“);
configuration.addResource(“/hdfs-site.xml“);
FileSystem fs = FileSystem.get(new URI(“hdfs://ns1“)configuration “root“);
byte[] bytes = file.getBytes();
InputStream inputStream = new ByteArrayInputStream(bytes);
FSDataOutputStream outputStream = fs
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2015-12-01 15:02 HDFSWeb
文件 886 2015-12-01 14:57 HDFSWeb.classpath
文件 1040 2015-11-27 11:37 HDFSWeb.project
目录 0 2015-12-01 15:02 HDFSWeb.settings
文件 503 2015-11-27 11:37 HDFSWeb.settings.jsdtscope
文件 364 2015-11-27 11:37 HDFSWeb.settingsorg.eclipse.jdt.core.prefs
文件 550 2015-12-01 14:57 HDFSWeb.settingsorg.eclipse.wst.common.component
文件 345 2015-11-27 11:37 HDFSWeb.settingsorg.eclipse.wst.common.project.facet.core.xm
文件 49 2015-11-27 11:37 HDFSWeb.settingsorg.eclipse.wst.jsdt.ui.superType.container
文件 6 2015-11-27 11:37 HDFSWeb.settingsorg.eclipse.wst.jsdt.ui.superType.name
目录 0 2015-12-01 15:02 HDFSWebuild
目录 0 2015-12-01 15:02 HDFSWebuildclasses
文件 2965 2015-12-01 14:57 HDFSWebuildclasseseans.xm
目录 0 2015-12-01 15:02 HDFSWebuildclassescn
目录 0 2015-12-01 15:02 HDFSWebuildclassescndemo
目录 0 2015-12-01 15:02 HDFSWebuildclassescndemocontroller
文件 8196 2015-12-01 15:00 HDFSWebuildclassescndemocontrollerFileController.class
目录 0 2015-12-01 14:59 HDFSWebuildclassescndemodao
目录 0 2015-12-01 15:02 HDFSWebuildclassescndemodomain
文件 2278 2015-12-01 14:57 HDFSWebuildclassescndemodomainFileBean.class
文件 925 2015-12-01 14:57 HDFSWebuildclassescndemodomainResFile.class
文件 215 2015-12-01 14:57 HDFSWebuildclassescndemodomainResFileMapper.xm
目录 0 2015-12-01 15:02 HDFSWebuildclassescndemoservice
文件 664 2015-12-01 15:00 HDFSWebuildclassescndemoserviceFileServiceImpl.class
文件 181 2015-12-01 14:57 HDFSWebuildclassescndemoserviceIFileService.class
文件 1197 2015-12-01 14:57 HDFSWebuildclassescore-site.xm
文件 2440 2015-12-01 14:57 HDFSWebuildclasseshdfs-site.xm
文件 158 2015-12-01 14:57 HDFSWebuildclassesjdbc.properties
文件 663 2015-12-01 14:57 HDFSWebuildclasseslog4j.properties
文件 1599 2015-12-01 14:57 HDFSWebuildclassesspringmvc.xm
文件 538 2015-12-01 14:57 HDFSWebuildclassessqlMapConfig.xm
............此处省略134个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)