JAVA 导出Excel 表代码教程

package util;

import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.servlet.http.HttpServletRequest;

import org.apache.shiro.SecurityUtils;
import org.apache.shiro.subject.Subject;

import com.tgb.entity.User;
import com.tgb.vo.ExportPlInoutReportHeads;

/**
 * @author Lu Kongwen
 * @version Create time:2016-10-10 下午4:41:20
 * @Description
 */
public class ExportHeadsUtils {

	public static List<ExportPlInoutReportHeads> getExportPlInoutReportHeads(HttpServletRequest request) {

		List<ExportPlInoutReportHeads> heads = new ArrayList<ExportPlInoutReportHeads>();

		ExportPlInoutReportHeads exportPlInoutReportHeads = new ExportPlInoutReportHeads();

		exportPlInoutReportHeads.setIr_in_time_begin_time(request.getParameter("ir_in_time_begin_time"));
		exportPlInoutReportHeads.setIr_in_time_end_time(request.getParameter("ir_in_time_end_time"));

		exportPlInoutReportHeads.setIr_out_time_begin_time(request.getParameter("ir_out_time_begin_time"));
		exportPlInoutReportHeads.setIr_out_time_end_time(request.getParameter("ir_out_time_end_time"));

		String ir_num = request.getParameter("ir_num");
		String ir_in_operator = request.getParameter("ir_in_operator");
		String ir_out_operator = request.getParameter("ir_out_operator");

		try {
			if (StringUtils.nonEmpty(ir_num)) {
				ir_num = URLDecoder.decode(ir_num, "UTF-8");
			}
			if (StringUtils.nonEmpty(ir_in_operator)) {
				ir_in_operator = URLDecoder.decode(ir_in_operator, "UTF-8");
			}
			if (StringUtils.nonEmpty(ir_out_operator)) {
				ir_out_operator = URLDecoder.decode(ir_out_operator, "UTF-8");
			}

		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}

		exportPlInoutReportHeads.setIr_num(ir_num);
		exportPlInoutReportHeads.setIr_in_operator(ir_in_operator);
		exportPlInoutReportHeads.setIr_out_operator(ir_out_operator);

		Subject subject = SecurityUtils.getSubject();
		User user = (User) subject.getPrincipal();

		exportPlInoutReportHeads.setExport_operator(user.getFull_name());
		exportPlInoutReportHeads.setExport_time(TimeUtils.getyyyyMMddHHMMStringByDate(new Date()));

		heads.add(exportPlInoutReportHeads);

		return heads;
	}
}
@RequestMapping(value = "exportExcptionInvoiceUseDetailRecords", method = RequestMethod.GET)
	public void exportExcptionCarTypeDetailRecords(HttpServletRequest request, HttpServletResponse response,Invoice invoice,
													TimeCompare timeCompare,
													Map<String, Object> map,Integer userID) throws Exception {
		List<ExportPlInoutReportHeads> heads = ExportHeadsUtils.getExportPlInoutReportHeads(request);

		List<String> l = new ArrayList<String>();
		Field filed = new Field();
		l.add(" invoice_status = 2");
		ToolsBarUtils.getInvoiceSearchCondition(invoice,timeCompare,userID, l, filed);

		List<Invoice> InvoiceVoList = invoiceService.findInvoiceAndUseRecordNOPage(l, filed);

		ExportUtils.exportExcel(response, heads, InvoiceVoList, "发票使用情况详细报表.xls", "template-excptionInvoiceUse.xls");

	}
package util;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import oracle.sql.TIMESTAMP;

/**
 * 数据库字段定义
 * 
 @Author 
 * @Date 2015-9-22
 * @Version 1.0
 * @Remark
 */
public class Field {
	private List<FieldVo> m_aParam = new ArrayList<FieldVo>();

	public Field addStr(String sValue) {
		return addStr(null, sValue);
	}

	public Field addStr(String sKey, String sValue) {
		m_aParam.add(new FieldVo(sKey, sValue, java.sql.Types.VARCHAR));
		return this;
	}

	public Field addStrL(String sValue) {
		return addStrL(null, sValue);
	}

	public Field addStrL(String sKey, String sValue) {
		m_aParam.add(new FieldVo(sKey, sValue, java.sql.Types.CLOB));
		return this;
	}

	public Field addInt(int nValue) {
		return addInt(null, nValue);
	}

	public Field addInt(String sKey, int nValue) {
		m_aParam.add(new FieldVo(sKey, nValue, java.sql.Types.INTEGER));
		return this;
	}

	public Field addFloat(float nValue) {
		return addFloat(null, nValue);
	}

	public Field addFloat(String sKey, float nValue) {
		m_aParam.add(new FieldVo(sKey, nValue, java.sql.Types.FLOAT));
		return this;
	}

	public Field addDouble(double nValue) {
		return addDouble(null, nValue);
	}

	public Field addDouble(String sKey, double nValue) {
		m_aParam.add(new FieldVo(sKey, nValue, java.sql.Types.DOUBLE));
		return this;
	}

	public Field addDateTime(long time) {
		return addDateTime(null, time);
	}

	public Field addDateTime(String sKey, long time) {
		m_aParam.add(new FieldVo(sKey, time, java.sql.Types.TIMESTAMP));
		return this;
	}
	
	public Field addDate(String s) {
		return addDate(null, s);
	}

	public Field addDate(String sKey, String s) {
		m_aParam.add(new FieldVo(sKey, s, java.sql.Types.DATE));
		return this;
	}

	/****
	 * 根据key 获取查找字段 如果查找不到 则返回null
	 * 
	 * @param fKey
	 * @return
	 */
	public FieldVo getByKey(String fKey) {
		for (FieldVo fv : m_aParam) {
			if (fv != null && fv.m_sKey.equals(fKey))
				return fv;

		}
		return null;
	}

	public List<FieldVo> getFields() {
		return m_aParam;
	}

	@Override
	public String toString() {
		StringBuilder sb = new StringBuilder();
		for (int i = 0; i < m_aParam.size(); i++) {
			sb.append(m_aParam.get(i).m_sKey).append(":")
					.append(m_aParam.get(i).m_oValue).append("|");
		}
		return sb.toString();
	}
}

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值