真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

JAVA導(dǎo)出EXCEL表格的方法

小編給大家分享一下JAVA導(dǎo)出EXCEL表格的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

創(chuàng)新互聯(lián)公司長期為上千客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為市中企業(yè)提供專業(yè)的網(wǎng)站建設(shè)、網(wǎng)站制作,市中網(wǎng)站改版等技術(shù)服務(wù)。擁有10多年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。

JAVA導(dǎo)出EXCEL表格的方法:首先用HSSFWorkbook打開或者創(chuàng)建“Excel文件對象”;然后用Sheet對象返回行對象,用行對象得到Cell對象;接著對Cell對象讀寫;最后將生成的文件放入響應(yīng)的前端頁面。

JAVA導(dǎo)出EXCEL表格的方法:

基本操作步驟:

首先,我們應(yīng)該要知道的是,一個Excel文件對應(yīng)一個workbook,一個workbook中有多個sheet組成,一個sheet是由多個行(row)和列(cell)組成。

那么我們用poi要導(dǎo)出一個Excel表格的正確順序應(yīng)該是:

1、用HSSFWorkbook打開或者創(chuàng)建“Excel文件對象”

2、用HSSFWorkbook對象返回或者創(chuàng)建Sheet對象

3、用Sheet對象返回行對象,用行對象得到Cell對象

4、對Cell對象讀寫。

5、將生成的HSSFWorkbook放入HttpServletResponse中響應(yīng)到前端頁面

導(dǎo)出Excel應(yīng)用實例:

工具類代碼:

package com.yq.util;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
public class ExcelUtil {
    /**
     * 導(dǎo)出Excel
     * @param sheetName sheet名稱
     * @param title 標題
     * @param values 內(nèi)容
     * @param wb HSSFWorkbook對象
     * @return
     */
    public static HSSFWorkbook getHSSFWorkbook(String sheetName,String []title,String [][]values, HSSFWorkbook wb){
        // 第一步,創(chuàng)建一個HSSFWorkbook,對應(yīng)一個Excel文件
        if(wb == null){
            wb = new HSSFWorkbook();
        }
        // 第二步,在workbook中添加一個sheet,對應(yīng)Excel文件中的sheet
        HSSFSheet sheet = wb.createSheet(sheetName);
        // 第三步,在sheet中添加表頭第0行,注意老版本poi對Excel的行數(shù)列數(shù)有限制
        HSSFRow row = sheet.createRow(0);
        // 第四步,創(chuàng)建單元格,并設(shè)置值表頭 設(shè)置表頭居中
        HSSFCellStyle style = wb.createCellStyle();
        style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 創(chuàng)建一個居中格式
        //聲明列對象
        HSSFCell cell = null;
        //創(chuàng)建標題
        for(int i=0;i

控制器代碼:

@Controller
@RequestMapping(value = "/report")
public class ReportFormController extends BaseController {
    @Resource(name = "reportService")
    private ReportManager reportService;
    /**
     * 導(dǎo)出報表
     * @return
     */
    @RequestMapping(value = "/export")
    @ResponseBody
    public void export(HttpServletRequest request,HttpServletResponse response) throws Exception {
           //獲取數(shù)據(jù)
           List list = reportService.bookList(page);
           //excel標題
          String[] title = {"名稱","性別","年齡","學校","班級"};
          //excel文件名
          String fileName = "學生信息表"+System.currentTimeMillis()+".xls";
       //sheet名
          String sheetName = "學生信息表";
      for (int i = 0; i < list.size(); i++) {
            content[i] = new String[title.length];
            PageData obj = list.get(i);
            content[i][0] = obj.get("stuName").tostring();
            content[i][1] = obj.get("stuSex").tostring();
            content[i][2] = obj.get("stuAge").tostring();
            content[i][3] = obj.get("stuSchoolName").tostring();
            content[i][4] = obj.get("stuClassName").tostring();
      }
      //創(chuàng)建HSSFWorkbook 
      HSSFWorkbook wb = ExcelUtil.getHSSFWorkbook(sheetName, title, content, null);
      //響應(yīng)到客戶端
      try {
        this.setResponseHeader(response, fileName);
           OutputStream os = response.getOutputStream();
           wb.write(os);
           os.flush();
           os.close();
       } catch (Exception e) {
           e.printStackTrace();
       }
  }
    //發(fā)送響應(yīng)流方法
    public void setResponseHeader(HttpServletResponse response, String fileName) {
        try {
            try {
                fileName = new String(fileName.getBytes(),"ISO8859-1");
            } catch (UnsupportedEncodingException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            response.setContentType("application/octet-stream;charset=ISO8859-1");
            response.setHeader("Content-Disposition", "attachment;filename="+ fileName);
            response.addHeader("Pargam", "no-cache");
            response.addHeader("Cache-Control", "no-cache");
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }
}

前端頁面代碼:


$('#js-export').click(function(){
            window.location.href="/report/exportBooksTable.do;
});

看完了這篇文章,相信你對JAVA導(dǎo)出EXCEL表格的方法有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!


當前文章:JAVA導(dǎo)出EXCEL表格的方法
當前鏈接:http://weahome.cn/article/ggopps.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部