java formfile_基于Struts文件上传(FormFile)详解

Struts中FormFile用于文件进行上传

1.在jsp文件中进行定义

名字:

头像:

2.在Form表单中定义FormFile

/*

* Generated by MyEclipse Struts

* Template path: templates/java/JavaClass.vtl

*/

package com.yourcompany.struts.form;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts.action.ActionForm;

import org.apache.struts.action.ActionMapping;

import org.apache.struts.upload.FormFile;

/**

* MyEclipse Struts

* Creation date: 08-24-2017

*

* XDoclet definition:

* @struts.form name="userForm"

*/

public class UserForm extends ActionForm {

/*

* Generated Methods

*/

private String username;

private FormFile file;

public String getUsername() {

return username;

}

public void setUsername(String username) {

this.username = username;

}

public FormFile getFile() {

return file;

}

public void setFile(FormFile file) {

this.file = file;

}

}

3.利用struts文件进行关联Form,关联以后

1)利用表单实例进行获取FormFile实例,在获取以后,我们可以通过FormFile获取上传文件的各种信息

UserForm userForm = (UserForm) form;

String username = userForm.getUsername();

FormFile file = userForm.getFile();

//通过formFile可以获取关于用户上传文件的各种信息

//用于获取文件名字

String fileName = file.getFileName();

//用于获取文件大小

int fileSize = file.getFileSize();

2)通过FormFile实例获取输入流,创建一个输出流,并且在代码中获取tomcat服务器的绝对路径

try {

//获取输入流

is = file.getInputStream();

//得到输出流

//1.得到file文件夹,上传到tomcat服务器后的绝对路径(file文件为新创建的文件夹)

String filePath = this.getServlet().getServletContext().getRealPath("/file");

//两个"//"的其中一个"/"为转义符

os=new FileOutputStream(filePath+"\\"+fileName);

int len=0;//表示读取的字节

//做一个缓存,防止文件过大而造成错误

byte[] buff=new byte[1024];

while((len=is.read(buff))!=-1)

{

os.write(buff,0,len);

}

is.close();

os.close();

}

以上这篇基于Struts文件上传(FormFile)详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/503951.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

空白世界地图打印版_考研准考证打印什么时候_中国研究生招生信息网官网

考研准考证打印什么时候_中国研究生招生信息网官网由广东研究生考试网考试快讯栏目由提供,更多关于考研准考证打印入口,广东研究生考试快讯的内容,请关注广东研究生考试频道/广东人事考试网!2021考研人注意啦!2021考研准考证下载时间及入口12…

debian java7_Debian 7 和 Debian 8 用户怎样安装 Oracle Java 8

Oracle Java 8 稳定版本近期已发布,有很多新的特征变化。其中,有功能的程序支持通过“Lambda项目 ”,收到了一些安全更新和界面改进上的bug修复,使得开发人员的工作更容易。本文将告诉你如何在Debian 7 “Wheezy”和Debian 8 “Je…

python创建虚拟环境venv_Python 3 使用venv创建虚拟环境

Python 3.3以上使用venv来代替了原来Python2使用的virtualenv创建虚拟环境。虚拟环境的作用是使得不同项目的Python包之间不会相互干扰,避免了由此产生的各种问题。现在演示下如何在桌面创建一个虚拟环境C:\Users\dell\Desktop>mkdir python3VenvTestC:\Users\de…

jdbc java连接oracle_java连接oracle jdbc连接

Class.forName("oracle.jdbc.driver.OracleDriver");Connection ctDriver.Magager.getConnection("jdbc:oracle:thin:127.0.0.1:1521:orcl","scott","tiger");java连接oracle odbc桥连接:Class.forName("sun.jdbc.odb…

python获取终端输出流_Linux下用Python获取命令行输出的几个方案

Python在慢慢成为脑影像数据处理中的主流语言。而在做脑影像处理时,不免有时候需要用到一些别人开发好的工具包,而这些包并不都是python包。下面是学习啦小编收集整理的Linux下用Python获取命令行输出的几个方案,希望对大家有帮助~~Linux下用…

广州python平均薪资_爬取广州的python和Java薪资,为什么Python 高于Java(有代码)...

标签:小编不知道这个是不是属于那个啥,要看的赶紧看,说不定小编的号要被封了。用python爬取了某某某直聘网站,直聘Python和Java的招聘信息,比较了两个方向的发展前(钱)途 ,主要是本科生。为了前(钱)途 冲啊…

hdu java_HDU-java实现1176

免费馅饼Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 58323 Accepted Submission(s): 20514Problem Description都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下…

python实现多语言语种识别_用Python进行语言检测

最近正好碰到这个需求,总结一下用Python进行语言检测的方法。1.用unicode编码检测汉字、韩文、日文等都有对应的unicode字符集范围,只要用正则表达式匹配出来即可。在判断的时候,往往需要去掉一些特殊字符,例如中英文标点符号。可…

vestacp 远程mysql_免费使用VestaCP控制面板的文件管理器 | 雷雨博客

VestaCP是由俄罗斯人编写的免费虚拟主机控制面板,该面板功能强大,即可自用也可对接WHMCS销售。不过面板并不支持免费的文件管理,官网的商业项目为 “File Manager”(月付3刀,终身50刀)及“SFTP Chroot”(月付1刀,终身1…

千寻位置 开发demo_java程序开发,使用javaagent无侵入代码方式,监控方法执行耗时...

背景描述javaagent是在JDK5之后提供的新特性,也可以叫java代理。开发者通过这种机制(Instrumentation)可以在加载class文件之前修改方法的字节码(此时字节码尚未加入JVM),动态更改类方法实现AOP,提供监控服务如;方法调用时长、可用…

java jpg结构_Java Class 字节码文件结构分析----附带逐字节码分析图

欢迎访问我的博客,同步更新: 枫山别院 今天给大家分享下Java Class字节码文件的结构解析。(文末附有详细大图)代码首先我们创建一个Java类,然后添加一些成员变量和方法,如下:public class Test {String name "hello";int size 10…

泊松分布的分布函数_《可靠性设计》——常用的概率分布

超几何分布:在总数为N、不合格品率为p的一批产品中随机抽取n个样品,且样品中r个不合格品的概率为则称x服从超几何分布。 当N很大时,上式计算相当烦琐,此时可以用二项分布或泊松分布来近似。二项分布:二项分布又称为Ber…

java jvm性能调优_《Java 底层原理》Jvm性能调优

前言Java 的性能调优,主要就是为了防止出现out of memory(oom)。Java出现oom就会直接导致程序停止运行。调优模拟元空间oom的情况importnet.sf.cglib.proxy.Enhancer;importnet.sf.cglib.proxy.MethodInterceptor;importnet.sf.cglib.proxy.MethodProxy;importjava.…

yota3墨水屏设置_汉阳环卫工节前给道路隔音屏“洗澡”

楚天都市报9月27日讯(记者卢成汉 通讯员肖赟 肖利)据了解,三环线汉阳段连接硚口区和经济技术开发区,是货运主通道和入城环路,墨水湖北路二环线延长线高架是二环线汉阳中心城区与三环线的重要连接道,都属“城市快速路”&#xff0c…

java atd_Java字符串String详解

1、String字符串实例化String对象:(1)直接赋值,如:String str"hello";(2)使用关键字 new,如:String strnew String("hello");由图可知:使用 new 的方式在堆内存中开辟了两个空间&#…

while用法_语法宝典:连词while的四种用法,你都学会了吗?

你可能知道while除了表示“当……的时候”,还有它与when, as的用法区别,但是这些还不够全面,今天小编就来给大家详细解析一下相关的用法,一起来看看吧!一、考查表示时间的用法,其意为“当……的时候”。如&…

java基础语法试题_java基础语法测试题

java基础语法测试题 Java 程序设计:07-07考试时间:90 分钟用户:wanggang 难度:0 总分:100导出时间:2011-07-07 13:06:15一、判断题(每题 2 分,总分 20 分)1.( )接口和类一样也可以有继承关系,而…

开发转测试没人要_新人如何快速的进入融入软件测试行业?

古人云“师傅领进门,修行在各人”任何行业的入门门槛都是不一样的,软件测试行业涉及到专业领域的知识,入门的门槛高吗?怎么更好的融入行业呢?首先要说到的是软件测试学习的途径主要就三种,一种自学&#xf…

winform checkbox要点击两次_这个Winform的UI库也太全了!四十多个控件都在这一个项目里了...

之前 Gitee 为大家介绍过几款优质的 Winform 项目:这几个WinForm项目,让你更熟悉 .NET|Gitee 项目推荐,发现Winform在大家心中的地位还是挺高的,那么今天就再给各位分享一款新鲜出炉的 Winform UI库——SunnyUI&#x…

java面向对象结课总结_java面向对象课程总结

前言:从大一下学期接触java面向对象课程,到现在java面向对象课程也是告了一段落,到这一阶段我也学了java的大部分的知识,基本的我大概已经懂了,但是在学习java面向对象这个课程中也积累了很多学习java的经验&#xff0…