accessorydownloadaction.java

来自「利用STRUTS2+SPRING+HIBERNATE/IBATIS建立的基本开发」· Java 代码 · 共 82 行

JAVA
82
字号
/**
 * 
 */
package com.sunwah.baseapp.content.action;

import java.io.ByteArrayInputStream;
import java.io.InputStream;
import java.net.URLEncoder;

import com.opensymphony.xwork2.Action;
import com.sunwah.baseapp.common.Constants;
import com.sunwah.baseapp.content.model.Accessory;
import com.sunwah.baseapp.service.GenericManager;

/**
 * 
 * 附件下载Action类
 * 
 * @author MARK
 * 
 */
public class AccessoryDownloadAction implements Action {
	private GenericManager<Accessory, String> accessoryManager;

	// 附件ID
	private String accessoryId;
	// 附件内容类型
	private String contentType;
	//
	private String contentDisposition;
	// 附件大小
	private Long contentLength;

	public InputStream getAccessoryFile() throws Exception {
		Accessory accessory = this.accessoryManager.get(accessoryId);
		contentType = accessory.getAccessoryType();
		contentDisposition = "filename="
				+ URLEncoder.encode(accessory.getAccessoryName(),
						Constants.DEFAULT_CHARACTER_ENCODING);
		contentLength = accessory.getAccessorySize();
		return new ByteArrayInputStream(accessory.getAccessoryContent());
	}

	public String execute() throws Exception {
		return SUCCESS;
	}

	public void setAccessoryManager(
			GenericManager<Accessory, String> accessoryManager) {
		this.accessoryManager = accessoryManager;
	}

	public void setAccessoryId(String accessoryId) {
		this.accessoryId = accessoryId;
	}

	public String getContentType() {
		return contentType;
	}

	public void setContentType(String contentType) {
		this.contentType = contentType;
	}

	public String getContentDisposition() {
		return contentDisposition;
	}

	public void setContentDisposition(String contentDisposition) {
		this.contentDisposition = contentDisposition;
	}

	public Long getContentLength() {
		return contentLength;
	}

	public void setContentLength(Long contentLength) {
		this.contentLength = contentLength;
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?