分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 代码编程

uploadifive struts2实现图片上传

发布时间:2023-09-06 02:32责任编辑:蔡小小关键词:upload

uploadify是来自国外的一款优秀的jQuery上传插件,主要功能是批量上传文件,带进度显示。

下面以HTML5 Version版本为例介绍uploadifive的使用,结合Struts2

各软件版本如下:

jQuery :1.8.0

Struts2 : 2.3.16.3

UploadiFive : 1.2.2

由于HTML5 Version是收费的,但可移步到download进行下载

一、添加对js和css文件的引用

<script type="text/javascript" src="uploadify/jquery-1.8.0.min.js"></script><script type="text/javascript" src="uploadify/jquery.uploadifive.min.js"></script><link rel="stylesheet" type="text/css" href="uploadify/uploadifive.css">

二、JSP页面代码

<body><input id="file_upload" type="file" name="file" /><div id="tip-queue"></div></body><script type="text/javascript"> ???$(function(){ ???$(‘#file_upload‘).uploadifive({ ?????????//‘auto‘ : false, ??//取消自动上传 ??????????‘uploadScript‘ : ‘fileUploadAction.action‘, //处理上传文件Action路径 ??????????‘fileObjName‘ : ‘file‘, ???????//文件对象 ???????‘buttonText‘ ??: ‘选择文件‘, ??//按钮显示文字 ????????‘queueID‘ ?????: ‘tip-queue‘, //提示信息放置目标 ????????‘fileType‘ ????: ‘image/*‘, ??//允许上传文件类型 ????????‘onUploadComplete‘ : function(file, data) { //文件上传成功后执行 ????????console.info(‘The file ‘ + file.name + ‘ uploaded successfully.‘); ???????} ???}); ???})</script>

三、struts.xml

<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN""http://struts.apache.org/dtds/struts-2.0.dtd"><struts><package name="ajax_code" extends="json-default"> ?????????<!-- 文件上传 --> ?????????<action name="fileUploadAction" class="com.home.FileAction" method="fileUpload"> ?????????????<result type="json" name="success"> ?????????????????<param name="contentType">text/html</param> ?????????????</result> ?????????</action> ?????</package> ?</struts>

四、处理上传文件Action

import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStream;import org.apache.struts2.ServletActionContext;public class FileAction {private File file; // 文件private String fileFileName; // 文件名private String filePath; // 文件路径private InputStream inputStream;/** * 文件上传 * ?* @return */public String fileUpload() {String path = ServletActionContext.getServletContext().getRealPath("/upload");File ff = new File(path); // 判断文件夹是否存在,如果不存在则创建文件夹if (!ff.exists()) {ff.mkdir();}try {if (this.file != null) {File f = this.getFile();String fileName = java.util.UUID.randomUUID().toString(); // 采用时间+UUID的方式随即命名String name = fileName+ fileFileName.substring(fileFileName.lastIndexOf(".")); // 保存在硬盘中的文件名FileInputStream inputStream = new FileInputStream(f);FileOutputStream outputStream = new FileOutputStream(path+ "\\" + name);byte[] buf = new byte[1024];int length = 0;while ((length = inputStream.read(buf)) != -1) {outputStream.write(buf, 0, length);}inputStream.close();outputStream.flush();// 文件保存的完整路径// 比如:D:\tomcat6\webapps\eserver\\upload\a0be14a1-f99e-4239-b54c-b37c3083134a.pngfilePath = path + "\\" + name;}} catch (Exception e) {e.printStackTrace();}return "success";}public File getFile() {return file;}public void setFile(File file) {this.file = file;}public String getFileFileName() {return fileFileName;}public void setFileFileName(String fileFileName) {this.fileFileName = fileFileName;}public String getFilePath() {return filePath;}public void setFilePath(String filePath) {this.filePath = filePath;}public InputStream getInputStream() {return inputStream;}public void setInputStream(InputStream inputStream) {this.inputStream = inputStream;}}

项目基本结构如下图:

效果如图:

项目源码下载:download

作者:itmyhome

转载请注明出处:http://blog.csdn.net/itmyhome1990/article/details/44061225

???????????

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

uploadifive struts2实现图片上传

原文地址:https://www.cnblogs.com/skiwnchqhh/p/10339499.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved