当前位置: 首页 > news >正文

陕西做网站公司/什么关键词能搜到资源

陕西做网站公司,什么关键词能搜到资源,网站建设 目标,百度网站推广怎么做最近把数据导出为Excel文件并保存到本地,由于有很多功能都会用到导出功能,所以就简单封装了一个导出框架,分享给大家。 导出框架思路: 1.一个Map对应一条数据记录 2.多条数据存放在List对象中 3.为了简化导出框架,该…

最近把数据导出为Excel文件并保存到本地,由于有很多功能都会用到导出功能,所以就简单封装了一个导出框架,分享给大家。

 

导出框架思路:

1.一个Map对应一条数据记录

2.多条数据存放在List对象中

3.为了简化导出框架,该框架是基于HttpServlet+Web项目实现,如果在SpringBoot或者SpringMVC框架中使用,就把Servlet中代码写到Service业务逻辑层即可。

 

基于MyEclipse完整项目的源码下载,点击下载。   

 

下面直接贴代码:

    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        List<PageData> list=new ArrayList<PageData>();
        PageData pd1=new PageData();
        pd1.put("name", "张三");
        pd1.put("mobile", "18311234567");
        list.add(pd1);
        list.add(pd1);
        HSSFWorkbook wb=null;
        try {
            wb = this.generateWorkbook(list);
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

        response.setHeader("Content-Disposition", "attachment;filename="
                + new String("演示.xls".getBytes("gb2312"), "iso8859-1"));// 指定下载的文件名
        response.setContentType("application/vnd.ms-excel");
        OutputStream out = new BufferedOutputStream(response.getOutputStream());
        wb.write(out);
        out.flush();
        out.close();
    }

    private HSSFWorkbook generateWorkbook(List<PageData> orderList)
            throws Exception {
        // 声明一个工作薄
        HSSFWorkbook wb = new HSSFWorkbook();
        // 声明一个单子并命名
        HSSFSheet sheet = wb.createSheet("工单信息");

        // 冻结标题(width * height)
        // sheet.createFreezePane(15, 1);
        // 给单子名称一个长度
        sheet.setDefaultColumnWidth((short) 15);
        // 生成一个样式
        HSSFCellStyle style = wb.createCellStyle();
        // 设置表头颜色
        HSSFFont font = wb.createFont();
        font.setColor(HSSFColor.BLUE.index);
        style.setFont(font);
        // 水平布局 居中
        style.setAlignment(HSSFCellStyle.ALIGN_CENTER);
        // 上下居中
        style.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);
        // 不锁定
        style.setLocked(false);
        // 设置边框
        style.setBorderBottom(HSSFCellStyle.BORDER_THIN); // 下边框
        style.setBorderLeft(HSSFCellStyle.BORDER_THIN);// 左边框
        style.setBorderTop(HSSFCellStyle.BORDER_THIN);// 上边框
        style.setBorderRight(HSSFCellStyle.BORDER_THIN);// 右边框
        // 创建第一行(也可以称为表头)
        HSSFRow row = sheet.createRow(0);
        // 样式字体居中
        style.setAlignment(HSSFCellStyle.ALIGN_CENTER);
        this.createExcelTitle(row, style);
        int k = 0;
        int orderSize = orderList == null ? 0 : orderList.size();
        for (int i = 0; i < orderSize; i++) {
            k++;
            row = sheet.createRow(k);
            this.addExcelContent(row, orderList.get(i));
            // row.createCell((short) 1).setCellValue(new
            // HSSFRichTextString(StringUtil.isNullObject(orderList.get(i).get("orderId")+"")));
        }
        return wb;
    }

    /**
     * 
     * 功能描述:创建工单title.
     * 
     */
    private void createExcelTitle(HSSFRow row, HSSFCellStyle style) {
        String[] titles = { "姓名", "手机号" };
        for (int i = 0; i < titles.length; i++) {
            String title = titles[i];
            // 给表头第一行一次创建单元格
            HSSFCell cell = row.createCell((short) i);
            cell.setCellValue(title);
            cell.setCellStyle(style);
        }
    }

    /**
     * 
     * 功能描述:增加一条数据记录.
     * 
     */
    private void addExcelContent(HSSFRow row, PageData pageData) {
        String[] fields = { "name", "mobile" };
        for (int i = 0; i < fields.length; i++) {
            String field = fields[i];
            row.createCell((short) i).setCellValue(
                    new HSSFRichTextString(pageData
                            .get(field) + ""));
        }
    }

PageData.java

public class PageData extends HashMap implements Map {

    private static final long serialVersionUID = 1L;

    Map map = null;
    HttpServletRequest request;

    public PageData(HttpServletRequest request) {
        this.request = request;
        Map properties = request.getParameterMap();
        Map returnMap = new HashMap();
        Iterator entries = properties.entrySet().iterator();
        Map.Entry entry;
        String name = "";
        String value = "";
        while (entries.hasNext()) {
            entry = (Map.Entry) entries.next();
            name = (String) entry.getKey();
            Object valueObj = entry.getValue();
            if (null == valueObj) {
                value = "";
            } else if (valueObj instanceof String[]) {
                String[] values = (String[]) valueObj;
                for (int i = 0; i < values.length; i++) {
                    value = values[i] + ",";
                }
                value = value.substring(0, value.length() - 1);
            } else {
                value = valueObj.toString();
            }
            returnMap.put(name, value);
        }
        map = returnMap;
    }

    public PageData() {
        map = new HashMap();
    }

    @Override
    public Object get(Object key) {
        Object obj = null;
        if (map.get(key) instanceof Object[]) {
            Object[] arr = (Object[]) map.get(key);
            obj = request == null ? arr
                    : (request.getParameter((String) key) == null ? arr
                            : arr[0]);
        }else if ((map.get(key) instanceof Integer)||(map.get(key) instanceof Long)) {
            obj=String.valueOf(map.get(key));
        }else {
            obj = map.get(key);
        }
        return obj;
    }

    public String getString(Object key) {
        String value=(String) get(key);
        if (null != value && !"".equals(value)) {
            value=value.trim();
        }
        return value;
    }

    @SuppressWarnings("unchecked")
    @Override
    public Object put(Object key, Object value) {
        return map.put(key, value);
    }

    @Override
    public Object remove(Object key) {
        return map.remove(key);
    }

    public void clear() {
        map.clear();
    }

    public boolean containsKey(Object key) {
        // TODO Auto-generated method stub
        return map.containsKey(key);
    }

    public boolean containsValue(Object value) {
        // TODO Auto-generated method stub
        return map.containsValue(value);
    }

    public Set entrySet() {
        // TODO Auto-generated method stub
        return map.entrySet();
    }

    public boolean isEmpty() {
        // TODO Auto-generated method stub
        return map.isEmpty();
    }

    public Set keySet() {
        // TODO Auto-generated method stub
        return map.keySet();
    }

    @SuppressWarnings("unchecked")
    public void putAll(Map t) {
        // TODO Auto-generated method stub
        map.putAll(t);
    }

    public int size() {
        // TODO Auto-generated method stub
        return map.size();
    }

    public Collection values() {
        // TODO Auto-generated method stub
        return map.values();
    }

}
 

基于MyEclipse完整项目的源码下载,点击下载。   

 

http://www.lbrq.cn/news/1106335.html

相关文章:

  • 做网站一个月能挣多少钱/免费个人自助建站
  • 做移动网站快速排名/淄博seo培训
  • 平台开发者/北京seo平台
  • 网站的反链怎么做/雅虎日本新闻
  • asp动态网站开发/营销课程培训
  • 做除尘环保的如何推广自己的网站/游戏广告投放平台
  • 到国外网站上做兼职翻译/手机优化大师
  • 长沙优化网站/优化关键词排名优化公司
  • 网站主页 优帮云/经典软文范例大全
  • 网站建站价格/站长工具精品
  • 上海建设工程质监站网站/网上营销推广
  • 网站站内内链建设/网络营销方案策划书
  • 建筑网cbi/优就业seo怎么样
  • 个人建站除了wordpress/商旅平台app下载
  • 腾讯云服务器centos做静态网站/国内搜索引擎排名2022
  • 常用网络营销方法举例/大连百度关键词优化
  • 大连在哪个网站做网上核名/关键词
  • 百度站长平台工具/做网络优化哪家公司比较好
  • 如何在网站上做qq群链接/网络营销好不好
  • 免费网页制作网站/优化服务平台
  • mangeto和wordpress/seo公司优化方案
  • 无锡做网站、/谷歌官网
  • 企业网站建设方案详细方案/线上教育培训机构十大排名
  • 美澳居的网站谁做的/湖北网站seo设计
  • 牡丹江信息网手机版招聘/百度seo关键词排名查询
  • 校园加盟网站建设/青岛百度网站排名
  • 购物网站开发总结报告/单页网站
  • wordpress爱视频/襄阳seo优化排名
  • 网站标题怎么做/全网营销型网站
  • 我想做个网站怎么弄/市场调研数据网站
  • 计算机网络:(十)虚拟专用网 VPN 和网络地址转换 NAT
  • Jenkins自动化部署.NET应用实战:Docker+私有仓库+SSH远程发布
  • 深入解析文本分类技术全景:从特征提取到深度学习架构
  • pytest + requests 接口自动化测试框架
  • Python获取网页乱码问题终极解决方案 | Python爬虫编码处理指南
  • 面向向量检索的教育QA建模:九段日本文化研究所日本语学院的Prompt策略分析(6 / 500)