`
lym6520
  • 浏览: 704187 次
  • 性别: Icon_minigender_1
  • 来自: 福建
社区版块
存档分类
最新评论

struts1.2 <htm:file>标签应用

    博客分类:
  • JAVA
阅读更多
1)首先创建个JavaWeb项目FileTag
2)然后添加Struts框架
3)创建file.jsp页面,注意在应用的模板中选择:Standard JSP using Struts 1.2/1.3
4)在file.jsp页面的BODY部分添加以下代码:(看源代码file.jsp红色字体)

<html:form action="file_tag" method="post" enctype="multipart/form-data">
    upload<html:file property="file"><br>
      </html:file>
    <html:submit value="submit"/>
    </html:form>
    you upload file:<bean:write name="file_tagForm" property="filename"/><br>
    size:<bean:write name="file_tagForm" property="size"/>


5)接下来创建一个Form,选择Struts 1.2 Form,Use Case名称为:File
6)创建完成后,打开FileForm.java,写入以下代码:(看源代码FileForm.java红色字体) 
private FormFile file;//定义从Form表单获得的文件
    private String filename;
    private String size;

//并生成get和set方法省略...
   
7)接下来要创建个Action,来处理从Form中获得的内容,选择Struts 1.2 Action,Use Case名称为:File,选择对应得Form(FileForm.java)和输入页面(file.jsp)
8)在FileAction.java中,写入以下代码: (看源代码file.jsp红色字体)
 
 
String dir=servlet.getServletContext().getRealPath("/upload");//获得upload文件夹的路径
  
  FormFile f=fileForm.getFile();
  
  String fname=f.getFileName();//获得文件名
  
  String size=Integer.toString(f.getFileSize())+"bytes";//获得文件大小
  
  try {
  
   InputStream in=f.getInputStream();//获得文件流
  
   OutputStream out=new FileOutputStream(dir+"/"+ffname);//定义输出流,指定存放的位置及文件名
  
   int bytesRead=0;
   byte[] buffer=new byte[8192];
   while((bytesRead=in.read(buffer,0,8192))!=-1){//in.read(buffer,0,8192)返回一个数值,把数据流读到buffer中,若-1数据流读取完毕
    out.write(buffer, 0, bytesRead);//读出输入流到out
   }
  
   //关闭输入,输出流
   out.close();
   in.close();
  
  } catch (FileNotFoundException e) {
   e.printStackTrace();
  } catch (IOException e) {
   e.printStackTrace();
  }
  
  file_tagForm.setFilename(fname);
  file_tagForm.setSize(size);
  
  return mapping.getInputForward();


9)在WebRoot文件夹下创建upload文件夹
10)启动tomcat,并把项目部署到tomcat中
11)打开浏览器输入URL:http//localhost:8080/FileTag/file.jsp 上传一个文件,可以在tomcat目录下的webapps\FileTag\upload文件夹中找到上传得文件

提示:因为没有对编码进行设置,所以当你上传得文件名是中文得时候,文件命会乱码,要改变乱码需要做个过滤器
分享到:
评论
1 楼 brilliantree 2013-06-04  
学习下,谢谢!

相关推荐

    struts2 标签使用

    通过以上几个示例,我们可以看到 `&lt;s:if&gt;` 标签在 Struts2 中的应用是非常灵活和强大的。它可以用来实现各种复杂的逻辑判断,如数值比较、字符串匹配等。此外,结合其他标签如 `&lt;s:iterator&gt;`,可以实现更复杂的逻辑...

    Struts 1.XX <html:file>的使用

    总结来说,Struts 1.XX `&lt;html:file&gt;`标签是处理Web表单文件上传的一种方式,它简化了在Java Web应用中实现这一功能的过程。通过结合ActionForm、Action类以及Struts配置文件,开发者可以构建出完整的文件上传解决...

    struts2<s:if>使用心得

    在Struts2框架中,`&lt;s:if&gt;`标签用于条件判断,类似于Java中的if语句。本篇文章将深入解析这段代码所涉及的关键知识点,并通过实际案例帮助理解如何使用Struts2中的`&lt;s:if&gt;`标签进行逻辑控制。 ### Struts2概述 ...

    struts标签(如<html:form>)

    关于STRUTS标签的一些详细说明。 如:&lt;html:form&gt;的说明。

    struts2 OGNL之&lt;s:property&gt;标签访问值栈(value stack)用法

    在这个主题中,我们将深入探讨OGNL(Object-Graph Navigation Language)以及如何通过`&lt;s:property&gt;`标签来访问Struts2中的值栈(Value Stack)。值栈是Struts2中一个核心的概念,它是一个存储用户请求数据和应用...

    struts1.2标签实例

    总结,Struts1.2标签实例对于初学者来说是非常有价值的教育资源,它可以帮助开发者快速掌握Struts框架的使用,提升Web应用开发的效率。通过深入理解和实践,开发者可以利用这些标签构建出高效、可维护的用户界面。

    Struts2标签 UI标志又可以分为表单UI和非表单UI两部分

    - `&lt;s:if&gt;`、`&lt;s:elseif&gt;` 和 `&lt;s:else&gt;` 标签用于实现条件判断逻辑。 - 示例: ```xml &lt;s:if test="%{testBoolean}"&gt; &lt;p&gt;这是显示的内容&lt;/p&gt; &lt;/s:if&gt; &lt;s:elseif test="%{testBoolean == false}"&gt; &lt;p&gt;这是另...

    JSP Struts之HTML标签库详解

    Struts 是一个经典的Java Web开发框架,它提供了一套丰富的标签库来简化JSP页面的编写,特别是对于处理用户输入和展示数据。...通过理解和熟练使用这些标签,可以更高效地构建基于Struts的Web应用。

    struts与jsp 使用方法

    在action里面写了方法获取一个list,再将这个list的值放到jsp页面中显示出来,用的是&lt;s:iterator&gt;标签。

    struts 1.2 标签使用说明

    - **其他标签**:如`&lt;cookie&gt;`, `&lt;header&gt;`, `&lt;include&gt;`, `&lt;parameter&gt;`, `&lt;resource&gt;`, `&lt;size&gt;`, `&lt;struts&gt;`, `&lt;write&gt;`等,它们分别处理特定任务,如cookie管理、资源加载、集合大小等。 4. **HTML标签库**: ...

    struts1.2基本标签使用视频

    Struts1.2是Apache软件基金会的一个开源项目,它是一个基于MVC(Model-View-Controller)设计模式的Java Web应用程序框架。这个框架的核心部分包括一个控制器Servlet,它负责接收HTTP请求,并根据配置的Action映射来...

    struts1.2的标签使用手册

    使用Struts 1.2的标签时,你需要在JSP页面中导入相应的标签库,通常通过`&lt;%@ taglib %&gt;`指令完成。例如,引入HTML标签库的指令为`&lt;%@ taglib prefix="html" uri="/tags/html" %&gt;`。 在实际开发中,理解并熟练运用...

    struts1.2、jstl、jsp三种标签教程

    1. **Struts1.2基础**:理解MVC模式,学习Action和Form Bean的概念,配置struts-config.xml文件,使用Struts提供的各种标签(如&lt;s:form&gt;、&lt;s:textfield&gt;)。 2. **JSTL应用**:掌握JSTL的各个标签库,学会如何在JSP...

    Struts1.2标签库资料

    - 在JSP页面中引入Struts1.2标签库,通常通过`&lt;%@ taglib %&gt; `指令完成,例如:`&lt;%@ taglib prefix="s" uri="/struts-tags" %&gt; `,其中`s`是自定义的前缀,`/struts-tags`是标签库的URI。 - 使用标签时,通过指定...

    Struts2中实现页面的跳转

    如果想要调用Action,应该使用Struts2的标签库,如`&lt;s:actionexecute/&gt;`或`&lt;s:redirect/&gt;`。 解决“no found”问题的步骤可能包括检查上述所有方面,确保配置正确、路径无误、拦截器没有干扰,以及web.xml的错误...

    Struts2 iterator 标签遍历 Map,List,数组(三十六)

    &lt;%@ taglib prefix="s" uri="/struts-tags" %&gt; ... &lt;s:iterator value="myMap"&gt; &lt;tr&gt; &lt;td&gt;&lt;s:property value="key" /&gt;&lt;/td&gt; &lt;td&gt;&lt;s:property value="value" /&gt;&lt;/td&gt; &lt;/tr&gt; &lt;/s:iterator&gt; ``` 在这个例子中,`...

    struts1_标签

    Logic标签库则提供了控制流程的标签,如`&lt;logic:iterate&gt;`用于迭代集合,`&lt;logic:equal&gt;`、`&lt;logic:notEqual&gt;`、`&lt;logic:greaterThan&gt;`等用于条件判断,`&lt;logic:present&gt;`、`&lt;logic:notPresent&gt;`用于检查请求、会话...

    struts标签 <write><logic>

    `&lt;write&gt;`和`&lt;logic&gt;`是Struts 1.x中的两个核心标签,主要用于视图层的展示和逻辑控制。 `&lt;write&gt;`标签是Struts的HTML标签库的一部分,主要用来在JSP页面中显示来自ActionForm或者Servlet请求范围内的属性值。例如...

    Struts应用开发完全手册(html标签)

    在Struts应用中,`&lt;html:html&gt;`和`&lt;html:base&gt;`标签用于初始化页面的一些基本属性。`&lt;html:html&gt;`标签可以根据用户会话或HTTP请求头中的语言偏好来设置HTML文档的语言属性,这在国际化应用中尤为重要。`&lt;html:base&gt;`...

    Struts2全部标签使用说明

    - `&lt;s:file&gt;` 标签用于处理文件上传,与Struts2的文件上传功能结合使用。 - `&lt;s:form&gt;` 创建表单,可以指定Action,收集用户输入的数据。 G. `&lt;s:generator&gt;` 和 `&lt;s:iterator&gt;`: - `&lt;s:generator&gt;` 通常与`s:...

Global site tag (gtag.js) - Google Analytics