• Ext上传文件


    /*
     * 
     * This file is part of Ext JS 4
     * 
     * Copyright (c) 2011 Sencha Inc
     * 
     * Contact: http://www.sencha.com/contact
     * 
     * GNU General Public License Usage This file may be used under the terms of the
     * GNU General Public License version 3.0 as published by the Free Software
     * Foundation and appearing in the file LICENSE included in the packaging of
     * this file. Please review the following information to ensure the GNU General
     * Public License version 3.0 requirements will be met:
     * http://www.gnu.org/copyleft/gpl.html.
     * 
     * If you are unsure which license is appropriate for your use, please contact
     * the sales department at http://www.sencha.com/contact.
     * 
     */
    Ext.require(['Ext.form.field.File', 'Ext.form.Panel', 'Ext.window.MessageBox']);
    
    Ext.onReady(function() {
    
    	Ext.define('State', {
    		extend : 'Ext.data.Model',
    		autoLoad : false,
    		fields : [{
    			type : 'string',
    			name : 'text'
    		}, {
    			type : 'string',
    			name : 'flag'
    		}]
    	});
    	var store = Ext.create('Ext.data.Store', {
    		model : "State",
    		proxy : {
    			type : "ajax",
    			url : "./totosea/js/combobox_1.js",
    			reader : {
    				type : "json"
    			}
    		},
    		autoLoad : true
    	});
    
    	var upform = Ext.create('Ext.form.Panel', {
    		renderTo : 'adminfileupdata',
    		width : 500,
    		id : "upform",
    		frame : true,
    		title : '文件上传',
    		bodyPadding : '10 10 0',
    		x : 40,
    		y : 40,
    		defaults : {
    			anchor : '100%',
    			allowBlank : false,
    			msgTarget : 'side',
    			labelWidth : 100
    		},
    
    		items : [{
    			xtype : 'combobox',
    			fieldLabel : '文件用途',
    			emptyText : '请选择文件用途分类',
    			store : store,
    			displayField : 'text',
    			valueField : 'flag',
    			name : 'flag'
    		}, {
    			xtype : 'textfield',
    			fieldLabel : '自定义文件名称',
    			emptyText : '请自定义文件名称,必填!',
    			name : "uplname"
    		}, {
    			xtype : 'filefield',
    			id : 'form-file',
    			emptyText : '请选择本地文件',
    			fieldLabel : '上传地址',
    			name : 'upl',
    			buttonText : '上传',
    			buttonConfig : {
    				iconCls : 'upload-icon'
    			}
    		}],
    
    		buttons : [{
    			text : '上传',
    			handler : function() {
    				var form = this.up('form').getForm();
    				if (form.isValid()) {
    					form.submit({
    						url : 'uploadAdmin.do',
    						waitMsg : '正在上传您的文件,请耐心等候...',
    						success : function(form, action) {
    							Ext.Msg.alert('提示信息', "文件保存成功");
    						},
    						failure : function() {
    							Ext.Msg.alert("提示信息", "对不起,文件保存失败");
    						}
    					});
    				}
    			}
    		}, {
    			text : '重置',
    			handler : function() {
    				this.up('form').getForm().reset();
    			}
    		}]
    	});
    });
    

      

    [{
    	'text' : '可执行sql文件(TXT)',
    	'flag' : '1'
    }, {
    	'text' : '普通文件',
    	'flag' : '2'
    }]
    

      

    /**
    	 * 资源文件上传到服务器
    	 */
    	public void uploadAdmin() {
    
    		String flag = this.servletRequest.getParameter("flag");
    		String uplname = this.servletRequest.getParameter("uplname");
    
    		String filePath = this.getDocumentAdminPath() + uplFileName;
    		File file = new File(filePath);
    
    		/**
    		 * 保存文件
    		 */
    		ResourceFile a = new ResourceFile();
    		a.setCreateDate(new Date());
    		a.setContentType(this.uplContentType);
    		a.setFilePath("/document/admin/" + uplFileName);
    		a.setFlag(Integer.parseInt(flag));
    		a.setExeNumber(0);
    		a.setExtension(ActionUtil.getExtention(uplFileName).substring(1));
    		a.setName(uplname);
    
    		/**
    		 * 复制文件到磁盘
    		 */
    		ActionUtil.copy(upl, file);
    		try {
    			this.hibernateService.save(a);
    		} catch (Exception e) {
    			e.printStackTrace();
    		}
    		/**
    		 * 返回结果
    		 */
    		// JSONObject json = new JSONObject();
    		// json.put("msg", "文件上传成功");
    		// json.put("success", "true");
    		// System.out.println(json.toString());
    		// JsonResult.json(json.toString(), servletResponse);
    	}
    

      

        <action name="uploadAdmin" class="fileAction"
                method="uploadAdmin">
                <interceptor-ref name="fileUpload">
                    <param name="allowedTypes">
                        application/vnd.ms-word, application/vnd.ms-excel,
                        application/pdf, text/plain,application/kswps
                    </param>
                    <param name="maximumSize">104857600</param>
                    <param name="savePath">/upload</param>
                </interceptor-ref>
                <interceptor-ref name="defaultStack" />
                <result name="success">${successValue}</result>
                <result name="r" type="redirect">${successValue}</result>
            </action>
  • 相关阅读:
    常用的电脑快捷键【转】
    win10关闭自动更新【转】
    JavaScript中双叹号(!!)作用【转】
    javascript中获取dom元素的高度和宽度【转】
    javascript的setTimeout()用法总结,js的setTimeout()方法【转】
    JavaScript sort() 方法使用【转】
    JavaScript slice() 方法使用【转】
    Ball CodeForces
    C. Trailing Loves (or L'oeufs?)
    C
  • 原文地址:https://www.cnblogs.com/tatame/p/2483417.html
Copyright © 2020-2023  润新知