人人IT网

HibernateSpring Struts iBATIS ANT SWING JSP技术 设计模式 DAO 领域模型 SOA JAVA综合 网络编程 游戏编程 开发框架 JUNIT 多线程 MAVEN WebService JBPM servlet EJB AOP Groovy JDBC J2EE J2ME JMX P2P JSF velocity
返回首頁
当前位置: 主页 > JAVA编程 > Spring >

Spring3文件上传,提速你的Web开发

时间:2010-10-16 04:56来源:互联网 作者:互联网 点击:
文章转至:网址: http://www.javabloger.com/article/spring-3-file-upload-example.html ? Spring1 推出的时候可以说是不小

文章转至:网址: http://www.javabloger.com/article/spring-3-file-upload-example.html

?

Spring1 推出的时候可以说是不小的颠覆了J2EE 的开发,彻底把EJB打败,将J2EE开发进行简化,
Spring2 推出以后完美的与多种开源框架与服务器的结合,让你对其拥抱的更紧,Spring变成了一个工具箱,一应俱全,
Spring3 推出以后让开发真正的得到简单化,并且Spring3支持REST风格,采用Spring3进行开发,简单的有点过分了

如果说我在吹嘘,那么1行有效的代码就可以完成B/S模式的文件上传,呵呵。废话少说,先看代码:
清单1:
springmvc-servlet.xml

在springmvc-servlet.xml文件中添加以下代码:
??? <bean id="multipartResolver"
?? ??? ??? class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
??? ??? ?<!– 设置上传文件大小的参数 –>
??????? <property name="maxUploadSize" value="1000000"/>
?????? </bean>

清单2:
web.xml

在web.xml文件中添加以下代码:

?? <servlet>??
????? <servlet-name>springmvc</servlet-name>??
????? <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>??
????? <load-on-startup>2</load-on-startup>??
?? </servlet>??
?<servlet-mapping>??
???? <servlet-name>springmvc</servlet-name>??
???? <url-pattern>/</url-pattern>??
?</servlet-mapping>??

清单3
upload.html

建立一个普通的html文件,加入以下代码:

<form method="post" action="/SpringREST/image/imageUpload" enctype="multipart/form-data">
??? <input type="file" name="file" />
??? <input type="submit"? value="upload"/>
</form>

清单4
ImageController.java

package com.javabloger.springrest.action;

import java.io.FileOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
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.multipart.MultipartFile;
import com.javabloger.springrest.dao.ImageDAO;

@Controller
@RequestMapping("/image")??

public class ImageController {
??? @RequestMapping("/imageUpload")??
??? public String processImageUpload(
??? ??? ??? ??? @RequestParam() MultipartFile file??? // 关键就是这句话起了作用
??? ??? ??? ??? ) throws Exception {
??? ??? ??? if (!file.isEmpty()) {
??? ??? ??? ??? byte[] bytes = file.getBytes();
??? ??? ??? ??? FileOutputStream fos = new FileOutputStream("d:/upload/"+file.getOriginalFilename()); // 上传到写死的上传路径
??? ??? ??? ??? fos.write(bytes);? //写入文件
??? ??? ??? ? }
??? ??? ??? System.out.println ("name: "+file.getOriginalFilename()+"? size: "+file.getSize() );? // 打印文件大小和文件名称
??? ??? ??? ?return "redirect:/image";?? // 跳转你所指定的页面名称
??? ??? ??? }
}

通过上一篇文章“Spring3 REST MVC框架,提速你的Web开发 ”在结合本篇文章的代码,我相信你也能很快的感受到Spring3的魅力。让我再熟悉一段时间,我会去看看Spring3中的源代码,我非常的好奇、非常的有兴趣。

?–end–


本文摘自:http://sts2008.javaeye.com/blog/785584
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码:点击我更换图片
推荐内容