`
lancijk
  • 浏览: 388520 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

webwork文件上传的几种方法,超简单!

    博客分类:
  • Java
阅读更多

这里就例举两种文件上传的代码,页面上的基本上是一样的哈。 这个是在webwork的框架下的导入,很简单~~

JSP页面中

页头文件中写入JS代码(这个可以省去,我这里是可以自己添加生成几个FileUp)

 

<script>
function addAttach(){
		var test=document.getElementById("testnum").value;
	var last =parseInt(parseInt(test) +1);		
	//alert(last);
	if(last !=30){
	tmpDiv1 = document.createElement("div");
    tmpDiv1.innerHTML += '<input type="file" name="zzpic" class="inputa"></input>'
			+ ' <a href="#移除" onclick="delAttach1(this)">移除</a>';
	divAttach1.appendChild(tmpDiv1);
	document.getElementById("testnum").value=last;
	}else{
			alert('最多可以允许添加30张');
		}
}


function delAttach(obj){
    var test=document.getElementById("testnum").value;
//	<input type="file" size=30 name="zzpic" class="inputa"/> 
	var last =parseInt(parseInt(test)-1);;
	document.getElementById("testnum").value=last;
	alert(last);	
    var pp=obj.parentNode;
	   pp.removeNode(true);}

</script>

 

接着看页面body中内容

<tr id="tr5" style="display:none">
                          <td align="right" valign="middle" class="td5">证件复印件:</td>
                          <td align="left" valign="middle" class="td5" colspan="3">
							<div id="divAttach1"><input type="file" size=30 name="zzpic" class="inputa"/> 
<a id="compose_att_a" onclick="addAttach1()" href="#增加附件">增加附件</a>
</div>
							<input type="hidden" value="0" id="testnum" name="testnum">
						</td>
                        </tr>

 

 

现在可以来看看Java中怎么处理这个上传文件了。。。。

(都是伪代码。。。抱歉,就是少写了一下格式而已哈。。)

第一种方法

  1:先定义属性

 

private File[] zzpic;
private String[] zzpicFileName; //这个可以进过webwork的拦截后得到
//<interceptor-ref name="fileUpload"/>
              public File[] getZzpic() {
		return zzpic;
	}

	public void setZzpic(File[] zzpic) {
		this.zzpic = zzpic;
	}

	public String[] getZzpicFileName() {
		return zzpicFileName;
	}

	public void setZzpicFileName(String[] zzpicFileName) {
		this.zzpicFileName = zzpicFileName;
	}

 

 

2:开始上传咯。。。。(执行类中)

 if (this.zzpic != null) {

  	 for(int i=1;i<zzpic.length;i++){
	    		 File file = this.zzpic[i];
		          FileInputStream fos = new FileInputStream(file);
		          byte[] b = new byte[(int)file.length()];
		          fos.read(b);
		        
		          ZhengZhaoKu zhengZhaoKu = new ZhengZhaoKu();
		          ....
		          zhengZhaoKu.setZztp(b);
		          zhengZhaoKu.setZzfilename(zzpicFileName[i]);
		        ......          
		          this.resZhengZhaoService.insertZhengzhao(zhengZhaoKu);
		          fos.close();
	    	 }

}

 

 简单么~~这就是webwork的上传方式一种

还有一种是~~

第二种:

第一步,设置属性

	private File[] attas;  //把页面中的file的名字换一换,呵呵

	private String[] attasFileName;

	private String[] attasContentType;


public File[] getAttas() {
		return attas;
	}

	/**
	 * @param attas
	 *            要设置的 attas
	 */
	public void setAttas(File[] attas) {
		this.attas = attas;
	}

	/**
	 * @return attasContentType
	 */
	public String[] getAttasContentType() {
		return attasContentType;
	}

	/**
	 * @param attasContentType
	 *            要设置的 attasContentType
	 */
	public void setAttasContentType(String[] attasContentType) {
		this.attasContentType = attasContentType;
	}

	/**
	 * @return attasFileName
	 */
	public String[] getAttasFileName() {
		return attasFileName;
	}

	/**
	 * @param attasFileName
	 *            要设置的 attasFileName
	 */
	public void setAttasFileName(String[] attasFileName) {
		this.attasFileName = attasFileName;
	}

 

 

 

Java类中(实现类中)

 

 String fileurl = 
	        defaultpath + "/" + 
	        String.valueOf(banjieoid) + "/";
	      FileTools.createDir(fileurl);

String tmp = attaFileName[0].substring
	        (attaFileName[0].lastIndexOf(".") + 1);
String tmpfilename = String.valueOf(System.currentTimeMillis()) + 
	        String.valueOf(Math.round(Math.random() * 1000.0D)) + "." + 	        tmp;

 FileOutputStream fos = new FileOutputStream(fileurl + tmpfilename);
	      FileInputStream is = new FileInputStream(atta);
	      FileTools.copyStream(is, fos);
	      is.close();
	      fos.close();

 OK了,都是伪代码~~爱爱~~希望各位可以看懂哈。。呵呵~~

 

0
1
分享到:
评论

相关推荐

    fileupload+dwr2+webwork2实现带进度条上传文件

    总的来说,结合FileUpload、DWR和WebWork2,开发者能够构建出一种高级的文件上传功能,不仅提高了用户体验,还确保了服务器端的稳定性和安全性。这个技术组合在过去的Web应用中非常流行,但现在随着前端技术的发展,...

    webwork上传下载

    在提供的文件列表中,我们看到有多个以".mht"结尾的文件,这是MHT(MHTML)文件,是一种单个文件中存储网页内容的格式,可能包含了关于WebWork文件上传和下载的讨论或者示例代码。例如,"webwork 文件下载 - New - ...

    webwork详细讲解.doc

    WebWork的工作流程主要包含以下几个步骤: 1. **接收HTTP请求**:当用户通过浏览器发送HTTP请求时,请求首先被服务器接收。 2. **请求解析**:服务器将请求传递给WebWork的`ServletDispatcher`,`ServletDispatcher...

    struts2系列教程

    - **视图技术**:Struts2支持的几种视图技术比较。 - **模板引擎集成**:如何集成如Freemarker等模板引擎。 #### 十二、集成AJAX - **12.1 JSON概述**:JSON格式的基本概念及其优势。 - **12.2 JSON-RPC概述**:...

    Struts 2权威指南配套源码-第16章与第17章

    3. **文件上传与下载**:Struts 2支持处理文件上传请求,这一章可能详细介绍了如何实现文件上传功能,包括处理多文件上传、设置最大文件大小限制等。 4. **拦截器链的优化**:如何根据实际需求调整和优化拦截器链,...

    Struts 2权威指南配套源码---第21章

    6. **文件上传(File Upload)**:Struts 2提供了一套完整的文件上传解决方案,包括单个文件和多个文件的上传,以及处理文件大小限制和类型验证。 7. **异常处理(Exception Handling)**:Struts 2提供了异常处理机制...

    Struts2基础学习44课时的笔记分享

    9. **上传下载**:学习Struts2处理文件上传和下载的方法,包括文件大小限制、错误处理等。 10. **插件和集成**:Struts2可以与其他库无缝集成,如Hibernate用于持久化,Spring用于依赖注入,Tiles用于布局管理等。...

    struts入门教程

    Struts2内置了文件上传和下载功能,通过简单的配置即可实现文件的上传和下载,极大地便利了文件处理相关的Web应用开发。 #### 十一、视图浅析 Struts2支持多种视图技术,包括JSP、FreeMarker、Velocity等,开发者...

    上传一个手动搭建的struts2登录实例

    通过这个实例,你可以了解Struts2框架的基本架构,学习如何编写Action类,配置struts.xml文件,以及如何结合JSP页面实现简单的用户交互。同时,这也是理解MVC模式和实践Java Web开发的一个好起点。

    Struts2入门教程

    Struts2内置了文件上传组件,利用Multipart解析器,可以轻松处理文件上传请求。同样,对于文件下载,Struts2也提供了相应的机制,通过设置Action的结果类型为`stream`,即可实现文件的下载。 #### 十二、视图技术 ...

    spring简介

    6. **Web包**:包含针对Web开发的特性,如文件上传、Servlet监听器支持,以及WebApplicationContext。 7. **MVC封装包**:Spring的Model-View-Controller实现,提供了一个清晰的模型和Web表单之间的分离,方便与...

    struts2简介

    - 文件上传和国际化支持:提供了文件上传组件,并支持多语言。 开发Struts2程序通常需要搭建特定的开发环境,其中包括: - JDK环境:Struts2基于Java语言,需要安装Java开发工具包(JDK)。 - 服务器:如Tomcat、...

    达内培训机密资料_struts2_day01(1)

    此外,Action 还可以利用 Struts2 的拦截器机制来处理数据验证、文件上传等功能。 通过以上内容的学习,开发者不仅可以了解到 Struts2 的基础概念,还可以通过实践掌握如何使用 Struts2 来开发一个简单的 Web 应用...

    Struts2教程集

    2. **高级主题**:涵盖 strut2 的高级特性,如动态方法调用、类型转换、文件上传下载等。 3. **异常处理**:讨论如何利用Struts2的异常处理机制,优雅地处理程序中的错误。 4. **国际化与本地化**:讲解如何实现多...

    Struts入门

    Struts 是一个开源的Java ...从简单的登录注册系统开始,逐渐尝试更复杂的功能,如文件上传、分页、权限控制等。同时,了解其他相关技术,如Spring、Hibernate等,能够更好地集成到Struts应用中,提升整体的开发效率。

    struts-2.3.16.rar

    Struts 2是Java Web开发领域的一个开源框架,它基于MVC(Model-View-Controller)设计模式,为开发者提供了一种结构化的、灵活的框架,以构建可维护性高、扩展性强的企业级应用程序。Struts 2是Struts 1的后续版本,...

Global site tag (gtag.js) - Google Analytics