`
oritenson
  • 浏览: 14038 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

【原创】struts上传文件时缺少enctype的严重后果!

阅读更多

struts比较好的优势之一就是提供了文件上传功能,在JavaWeb应用方面有很多地方都会用到文件上传。

struts文件上传实现如下:

①在JSP页面用<html:form >和<html:file>,其中<html:form>中要指定提交文件的类型,这个类型非常重要!指定类型就是告诉struts我上传的是复杂类型,不是普通的文本类型,如下:

<html:form    action=" "    method=""   enctype="multipart/form-data" >
②在actionForm里面用FormFile类型来定义上传文件的类型。

③在action里面可以根据实际需要,取得FormFile或者输入流,或者上传文件的类型,上传文件的名字和上传文件的大小,然后可以选择存入数据库,还是存入文件路径。

④注意:在应用的时候,我们通常不将文件存入数据库,而是直接存储文件的路径。

今天我就是按着自己的思路按部就班的做struts上传的流程做实验,可是不管怎么搞它都报错,而且当你不启动tomcat服务器或者不把项目部署到tomcat上它都还报错,把我搞的晕头转向,调试了半个小时也没有找到答案,好是郁闷!

首先是IE端错误信息:



在来看看MyEclipse端错误信息:


MyEclipse端说是类型不匹配,其实说到底就是你没有指定上传文件类型,服务器根本就不知道你上传的是份特殊的文件,不是普通文本。但是就是因为我没有指定,它仍将接受到的看做是普通文本,那么对于FormFile类型,肯定搞不定的啦,类型能匹配吗???只要在<html:form>里面加上enctype属性,就轻松解决了!呵呵~
  • 大小: 116.5 KB
  • 大小: 194.2 KB
分享到:
评论

相关推荐

    struts2文件上传

    利用struts2上传文件 环境配置JDK1.8 Eclipse 版本 Version: Mars Release (4.5.0) tomcat版本7.0.40 注意的问题是文件上传的时候的enctype="multipart/form-data" 如果设置错误会报错 今天初次使用Struts 2做文件...

    struts2文件上传下载

    struts2文件上传与下载, &lt;s:form name="Myform" action="/fileManage/upload" method="post" enctype="multipart/form-data" theme="simple" &gt; &lt;s:fielderror&gt;&lt;/s:fielderror&gt; 文件"&gt;&lt;/s:file&gt; ...

    上传文件fileupload+解决enctype= multipart/form-data无法传递其他参数

    解决上传文件enctype= multipart/form-data 时无法传递其他参数的问题,以及项目全局编码问题。用的插件是commons io + commons fileupload

    Struts2文件的上传和下载

    Struts2中的文件的上传和下载 1. 文件上传的原理: 表单元素的enctype属性指定的是表单数据的编码方式,该属性有3个值: 1) application/x-www-form-urlencoded:这是默认编码方式,它只处理表单域里的value属性...

    struts2中的文件上传和下载

    struts2中的文件上传和下载: 1.首先导入commons-fileupload-1.2.1.jar和commons-io-1.4.jar两个jar包 2.其次JSP页面中的文件上传控件所在的form必须设置属性enctype="multipart/form-data" 3.再次,struts2中...

    解决java enctype multipart form-data文件上传传值问题

    解决java enctype multipart form-data文件上传传值问题 不使用jspsmartupload组件 可以轻轻松松 解决传值问题

    struts1.x上传实例

    struts文件上传,struts upload组件文件上传 最基本的实例,将文件上传到应用服务器里 1.upload.jsp内容 &lt;form action="fileup.do" method="post" enctype="multipart/form-data" &gt; 文件:...

    PHP与Web页面交互 -文件上传和下载.ppt

    开发文件上传表单页面 在实现文件上传时,首先需要设置文件上传表单,这个表单的提交方式必须为POST。另外,还需要增加上传的属性enctype= “multipart/form-data”,该属性说明浏览器可以提供文件上传功能。 2.编写...

    基于java的企业级应用开发:文件上传和下载.ppt

    开发文件上传表单页面 在实现文件上传时,首先需要设置文件上传表单,这个表单的提交方式必须为POST。另外,还需要增加上传的属性enctype= “multipart/form-data”,该属性说明浏览器可以提供文件上传功能。 2.编写...

    form 在上传文件时用enctype字段有什么用处

    FORM元素的enctype属性指定了表单数据向服务器提交时所采用的编码类型,默认的缺省值是“application/x-www-form-urlencoded”。...在文件上载时,所使用的编码类型应当是“multipart/form-data”,它既可以发送

    web开发文件的上传和下载

    实现web开发中的文件上传功能,需完成如下二步操作: ...设置该值后,浏览器在上传文件时,将把文件数据附带在http请求消息体中,并使用MIME协议对上传的文件进行描述,以方便接收方对上传数据进行解析和处理。

    servlet上传 enctype="multipart/form-data"

    servlet上传 enctype="multipart/form-data" servlet上传 enctype="multipart/form-data

    AjaxFileUpload+Struts2实现多文件上传功能

    本文重点给大家介绍AjaxFileUpload+Struts2实现多文件上传功能,具体实现代码大家参考下本文。 单文件和多文件的实现区别主要修改两点, 一是插件ajaxfileupload.js里接收file文件ID的方式 二是后台action是数组形式...

    NodeJs form-data格式传输文件的方法

    本文介绍了Node Js 使用KOA处理form-data格式传输过来的文件,分享给大家。...form表单【注意:enctype=”multipart/form-data”】上传文件时,首先会将文件上传到你本机的temp目录,然后执行move_upload_file

    jsp文件上传下载通用包

    当表单需要上传文件时,需指定表单 enctype 的值为 multipart/form-data 在 form 元素的语法中,enctype 属性指定将数据发送到服务器时浏览器使用的编码类型。 enctype 属性取值: application/x-...

    用ssh实现图片上传

    详细的资料上传ssh代码在页面上写上struts的文件标签,注意enctype="multipart/form-data" method="post",action里要求有3个属性 private File file; private String fileContentType; private String ...

    SpringBoot文件上传.docx

    编写html文件在classpath下的static中 ...文件上传 &lt;form action="fileUploadController" method="post" enctype="multipart/form-data"&gt; 上传文件:&lt;input type="file" name="filename"/&gt; &lt;/html&gt;

    用PHP文件上传的具体思路及实现

    也许每一个站点都可能会对上传文件有许多的限制,这些限制会包括 文件类型,文件大小,扩展名,以及上传目录的存在与否,上传文件的存在与否,目录的可写性,可读性,上传文件的改名及怎样把文件从缓存当中复制到你...

    文件上传指南pdf

    文件上传要求客户端必须用 Post 方式提交数据,并且在 form 标签的 enctype 属性值必 须为: "multipart/form-data" ,表示本次请求可以上传文件,该属性的默认值是 "application/x-www-form-urlencoded"。Html 标签...

Global site tag (gtag.js) - Google Analytics