`

Spring MVC 文件上传 Maven

 
阅读更多
FileUploadController.java

package cn.com.songjy.fileupload.controller;

import java.io.File;
import java.io.IOException;

import javax.servlet.ServletContext;

import org.apache.commons.io.FilenameUtils;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.context.ServletContextAware;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.commons.CommonsMultipartFile;

@Controller
public class FileUploadController implements ServletContextAware{
	
	private ServletContext servletContext;
	
	@Override
	public void setServletContext(ServletContext servletContext) {
		this.servletContext = servletContext;
	}
	
	@RequestMapping(value = "/file.do", method = RequestMethod.POST)
	public String fileUpload(
			@RequestParam("up1") MultipartFile multipartFile,
			@RequestParam("up2") CommonsMultipartFile commonsMultipartFile) throws Exception{
		String path = servletContext.getRealPath("/");
		if(multipartFile.isEmpty()){
			System.out.println("方式一没有选择文件");
		}else{
			String fileName = "way1"+multipartFile.getOriginalFilename();
			File file = new File(path+fileName);
			multipartFile.transferTo(file);
			
			System.out.println("方式一文件名:"+fileName);
			System.out.println("方式一文件路径:"+file.getPath());
			System.out.println("方式一文件后缀名:"+FilenameUtils.getExtension(multipartFile.getOriginalFilename()));
		}
		
		if(commonsMultipartFile.isEmpty()){
			System.out.println("方式二没有选择文件");
		}else{
			String fileName = "way1"+commonsMultipartFile.getOriginalFilename();
			File file = new File(path+fileName);
			commonsMultipartFile.getFileItem().write(file);
			
			System.out.println("方式二文件名:"+fileName);
			System.out.println("方式二文件路径:"+file.getPath());
			System.out.println("方式二文件后缀名:"+FilenameUtils.getExtension(commonsMultipartFile.getOriginalFilename()));
		}
			
		return "file";
	}
	
	@RequestMapping(value = "/fileIndex.do", method = RequestMethod.GET)
	public String fileIndex(){
		return "file";
	}

}


<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Spring FileUpload</title>
</head>
<body>
<form action="file.do" method="post" enctype="multipart/form-data">
	<input type="file" name="up1"><br>
	<input type="file" name="up2"><br>
	<input type="submit" value="上传">
</form>
</body>
</html>
分享到:
评论
2 楼 Jnerd 2014-10-25  
路径,限制的文件大小怎么配
1 楼 wqdave 2014-04-16  

相关推荐

    spring mvc mybatis 整合 maven

    在Spring MVC和MyBatis整合的项目中,Maven可以帮助我们自动下载并管理所需的库文件,简化构建流程。 整合步骤: 1. 创建 Maven 项目:首先,我们需要创建一个新的Maven项目,定义项目的基本结构,包括src/main/...

    Spring MVC 4 Quickstart Maven Archetype

    Spring MVC 4 Quickstart Maven Archetype 是一个快速启动模板,专为构建基于Spring MVC 4的无XML(no-xml)Web应用程序而设计。这个模板简化了开发过程,通过Maven构建工具帮助开发者快速搭建一个功能完备的Web应用...

    Spring-MVC+Maven构建java项目

    在提供的VM_MANAGE文件中,可能包含了一个简单的Spring MVC + Maven项目示例。这个示例可能演示了如何创建一个基本的CRUD操作,比如用户管理。它可能包括了创建Controller来处理HTTP请求,定义对应的Service和DAO层...

    spring4 mvc maven

    标题中的"spring4 mvc maven"指的是一个使用Spring MVC框架和Maven构建工具的Web应用程序项目。这个项目的核心是Spring MVC,它是Spring框架的一部分,专门用于构建Web应用,提供了模型-视图-控制器(MVC)架构模式...

    Spring MVC HelloWorld Maven实例

    **Spring MVC HelloWorld Maven实例** Spring MVC是Spring框架的一部分,它是一个用于构建Web应用程序的模型-视图-控制器(MVC)架构。在这个实例中,我们将深入理解如何使用Maven构建一个基本的“Hello, World!”...

    基于ssm(spring+spring mvc+mybatis+maven)高仿bilibili视频网站项目源码.zip

    基于ssm(spring+spring mvc+mybatis+maven)高仿bilibili视频网站项目源码.zip 基于ssm(spring+spring mvc+mybatis+maven)高仿bilibili视频网站项目源码.zip 基于ssm(spring+spring mvc+mybatis+maven)高仿bilibili...

    关于Spring MVC项目(maven)中通过fileupload上传文件

    在本场景中,我们关注的是使用Maven构建的Spring MVC项目,并涉及到`commons-fileupload`和`commons-io`这两个库,它们是Java中处理文件上传的核心工具。以下是关于这个主题的详细知识点: 1. **Spring MVC**: ...

    spring mvc data jpa maven demo 全注解

    标题中的“Spring MVC Data JPA Maven Demo 全注解”是指一个使用Spring MVC、Spring Data JPA和Maven构建的示例项目,该项目全面利用注解进行配置,旨在简化开发流程并提高效率。让我们详细了解一下这三个核心组件...

    IntelliJ IDEA上创建Maven Spring MVC项目

    在本文中,我们将深入探讨如何使用IntelliJ IDEA创建一个基于Maven的Spring MVC项目。首先,我们需要了解几个核心概念: 1. **IntelliJ IDEA**:这是一款强大的Java集成开发环境(IDE),广泛用于Java应用程序的...

    springmvc + spring + mybatis + maven整合配置文件

    在IT行业中,构建一个高效、可维护的企业级Web应用程序常常会采用MVC(Model-...通过这样的配置,开发者可以快速构建起一个基于Spring MVC、Spring和MyBatis的Web应用,同时利用Maven的便利性进行项目的构建和管理。

    spring mvc+spring+maven框架项目,纯净项目

    Spring MVC、Spring 和 Maven 是Java开发中非常重要的三个框架,它们在构建现代企业级Web应用程序中扮演着核心角色。这个"spring mvc+spring+maven框架项目"提供了一个纯净的基础,便于开发者快速搭建和理解这三者...

    maven与spring MVC

    通过在pom.xml文件中声明Spring MVC、Hibernate和Validation等相关库的依赖,Maven可以自动解决这些依赖,避免了手动管理jar文件的繁琐工作。 Spring MVC与Hibernate: Spring MVC可以轻松地整合Hibernate,以实现...

    spring,spring mvc,mybatis,maven,mySql 项目框架

    在IT行业中,构建高效、可维护的Web应用是至关重要的,而"spring,spring mvc,mybatis,maven,mySql 项目框架"恰好是一个典型的企业级开发组合,它们各自扮演着不同的角色,共同构成了强大的后端开发基础。...

    一个入门的spring mvc demo,基于eclipse maven

    在这个入门的Spring MVC demo中,我们将深入探讨其与Eclipse IDE和Maven构建工具的集成。 首先,Eclipse是一款广泛使用的Java集成开发环境,支持多种插件,包括M2Eclipse,这是一个专门用来管理和构建Maven项目的...

    文件上传下载(maven + spring mvc + jetty)

    在本文中,我们将深入探讨如何使用Maven、Spring MVC和Jetty实现文件的上传与下载功能。这是一个典型的Web应用程序开发场景,特别是在企业级应用中,文件的上传和下载是不可或缺的功能。 首先,让我们从Maven开始。...

    ssm_spring_mvc_maven.war

    ssm_spring_mvc_maven.war,页面用的bootstrap,实现了记录的增删改查,数据回显,模糊查询

    maven+spring MVC+Mybatis+jetty+mysql

    "maven+spring MVC+Mybatis+jetty+mysql" 的组合是常见的开发栈,它涵盖了项目管理、前端控制器、持久层操作、应用服务器以及数据库管理等多个层面。下面将详细介绍这些关键技术及其在实际应用中的作用。 1. Maven...

    spring+mybatis+spring-mvc+maven 项目框架.zip

    1. 首先,创建一个新的Maven项目,并在pom.xml文件中添加Spring、MyBatis、Spring-MVC相关的依赖。 2. 接着,配置Spring的bean定义文件(如applicationContext.xml),定义服务层(Service)和数据访问层(DAO)的...

    spring mvc+spring+hibernate+maven 企业级员工信息管理系统.zip

    《基于Spring MVC、Spring、Hibernate和Maven的企业级员工信息管理系统》 在现代软件开发领域,企业级应用的构建往往离不开高效、稳定的框架支持。本系统以“spring mvc+spring+hibernate+maven”为核心技术栈,...

    Spring MVC+Maven 实现前端和后台交互源码

    这是结合博客的源码,链接是:http://blog.csdn.net/u012660464/article/details/53508757 。名为:Spring MVC+Maven 实现同一项目的前端和后台交互,该源码示例了前端和后台如何进行参数的绑定传递。

Global site tag (gtag.js) - Google Analytics