ÃֽŠ°Ô½Ã±Û(JAVA)
2019.01.13 / 22:18

[POI] poi¸¦ ÀÌ¿ëÇÑ Excel ´Ù¿î·Îµå

hanulbit
Ãßõ ¼ö 197

¿äÁò¿¡ ¿Ö ÀÌ·¸°Ô ÇÇ°ïÀÌ Ç®¸®Áö ¾Ê´ÂÁö ¸ð¸£°Ú³×¿ä. :D

Ç×»ó ÇÇ°ïÇÏ°í ´«Àº °è¼Ó ³ªºüÁö°í ¾ÆÇÁ±â¸¸ ÇÕ´Ï´Ù.

¸¶Ä¡ ³» Àλý ½ÅüÀûÀÎ Á¤Á¡À» Âï°í ³»·Á¿À´Â µíÇÑ ´À³¦À̶ö±î ¤»¤»¤»

±×³É ´À³¦ÀÌ°ÚÁÒ ¤»¤»

 

À̹ø¿£ poi¸¦ ½á¼­ Excel ´Ù¿î·Îµå¸¦ Çغ¼±î »ý°¢ÁßÀÌ¿¡¿ä ..

 

ÀÚ ±×·³ poi´Â ¹«¾ùÀϱî ?

¸¶ÀÌÅ©·Î¼ÒÇÁÆ® ´ÙÅ¥¸ÕÆ®¸¦ À§ÇÑ JAVA API¶ó°í µÇ¾î ÀÖ½À´Ï´Ù.

ÀÌ poi¿¡´Â ¿©·¯°¡Áö ¼­ºê ÇÁ·ÎÁ§Æ®µéÀÌ Á¸ÀçÇÕ´Ï´Ù.

ÀÌ poi¸¦ ÀÌ¿ëÇؼ­ ´ëÇ¥ÀûÀ¸·Î excelÀ» Çڵ鸵 ÇÒ ¼ö ÀÖ°Ô µË´Ï´Ù. ¿¹¸¦ µé¾î µ¥ÀÌÅͺ£À̽º¿¡ Á¸ÀçÇÏ´Â µ¥ÀÌÅ͵éÀ» excel·Î ÃßÃâÇÒ ¼ö ÀÖ°Ô µË´Ï´Ù.

±× ¹æ¹ýÁß¿¡¼­´Â poi¸¦ »ç¿ëÇÏ´Â ¹æ¹ýµµ ÀÖÁö¸¸ html table·Î ±×·Á¼­ excel·Î ÀúÀåÇÏ´Â ¹æ¹ýµµ ÀÖ½ÀÁÒ.

 

¿Ö »ç¿ëÇØ¾ß Çϳª¶ó°í ¹¯´Â´Ù¸é

°£´ÜÇÏ°Ô Excel ÆÄÀÏÀ» java·Î ÀÐ°í ¾²°í Çϱâ À§ÇÔÀÌ´Ù¶ó°í ¸»¾¸µå¸± ¼ö ÀÖ½À´Ï´Ù.

»ç½Ç ¹ø¿ªÇÏ´Ù°¡ ÀÌ·± ½Ã.. ¤± °øºÎ Á» Çؾ߰ھî¿ë

 

Á¦°¡ poi·Î ¹»Çß´ÂÁö¿¡ ´ëÇؼ­ ¾ê±âÇÏ°í Äڵ带 Àû¾î³»·Á°¡µµ·Ï ÇÒ°Ô¿ä.

Á¦°¡ ÇÊ¿äÇÑ°Ç DB¿¡¼­ ¾î¶² °ªÀ» °¡Á®¿Àµç Ä÷³ÀÌ ¸î°³ÀÌµç »ó°ü¾øÀÌ Excel ½ÃÆ®¶û ¸ÅÇνÃÄÑ µ¥ÀÌÅ͸¦ Ãâ·ÂÇØÁà¾ß Çß½À´Ï´Ù.

 

»ùÇÃÀ» °¡Á®´Ù°¡ »ç¿ëÀ» Çغôµ¥ ÀÏ´Ü °®´Ù³õ°í µÇ´ÂÁö ¾ÈµÇ´ÂÁö¸¸ ÇÏ´Ùº¸´Ï for¹®À̶û ¹Ýº¹Äڵ尡 ÀÛ¿­ ÇÏ´õ±º¿ä ¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤».. ÀÌ°Ô ³ªÀÇ ÁøÂ¥ ½Ç·Â

¿ø·¡ ÄÚµå´Â for¹®ÀÌ ³­¹«ÇؾßÇÔ ¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»

 

±×·¡¼­ ¹Ù²å½À´Ï´Ù.

±× ¹Ù²Û°É Æ÷½ºÆÃÇÕ´Ï´Ù.

 

1. Excel Ä÷³À̶û DB Ä÷³À̶û ¸ÅÇÎ ½Ãų·Á¸é ¾î¶»°Ôµç ¸ÅÇεǴ µ¥ÀÌÅ͸¦ °¡Áö°í ÀÖ¾î¾ß ÇÒ ÇÊ¿ä°¡ ÀÖ¾ú½À´Ï´Ù. ¹è¿­ÀÌ µÇµç ¸ÊÀÌ µÇµç ¹¹°¡ µÇµç ¹¹°¡ ÀÖ¾î¾ß ¼Ò½º´Â ÅÍÄ¡ÇÏÁö ¾Ê°í ¸ÅÇεǴ ºÎºÐ¸¸ ¼öÁ¤ ¹Ù²ãÁÖ¸é µÇÁö ¾Ê°ÚÀ½ ? ±×·¡¼­ ªÀº »ý°¢À¸·Î ÀÌ·¸°Ô ó¸®Çß½À´Ï´Ù.

 

map.put("drwng_nm", FormatData.nullCheck(rs.getString("drwng_nm"))+"@@3");

 

ÀÌ·¸°Ô °¡Á®¿Ã¶§ Ä÷³ ¼ø¼­¸¦ ±×³É °ª¿¡´Ù°¡ ¹Ú¾ÆÁá¾î¿ä. ¹°·Ð Àú ½Çµ¥ÀÌÅ͸¦ ÃßÃâÇس¾¶§µµ split ÇؾßÇÕ´Ï´Ù. Àú ¼ýÀÚ´Â ½Çµ¥ÀÌÅÍ¿Í °°ÀÌ Çѹø¸¸ »ç¿ëµÇ°Ô µË´Ï´Ù.

 

ÀÌ·¸°Ô db¿¡¼­ µ¥ÀÌÅÍ´Â °¡Á®¿Â°Ì´Ï´Ù.

 

2. ´ÙÀ½¿¡´Â Excel¿¡ ÀÛ¼ºµÉ Ä÷³À» ¼±¾ðÇؾßÇÕ´Ï´Ù.

 

String[] titleArr = {"¹øÈ£","µµ¸é°æ·Î","¼³°è°Ç¸í","½Ã°ø°Ç¸í","ÁÖÁ¦¸ñ"...};

 

Àú´Â ¹è¿­¿¡ ´ã¾Ò¾î¿ä. °á±¹Àº Àú ¹è¿­ÀÇ ¼ø¼­¶û ¾Æ±î µ¥ÀÌÅͺ£À̽ºÀÇ @@µÚ¿¡ ¼ýÀÚ¶û ÀÏÄ¡ÇØ¾ß Çϴ°ÅÁÒ.

 

ÀÌÁ¦ ±âº»ÀûÀÎ ÀÛ¾÷Àº µÈ°Å¿¡¿ä. EXCEL¿¡ Ä÷³À̶û ±× Ä÷³¿¡ µé¾î°¥ °ªµéÀ» ´Ù °¡Á®¿Â°Å´Ï±î¿ä.

poi·Î Àú°ÍµéÀ» ¾î¶»°Ô ´ã¾ÆÁà¾ß Çϳª¸¦ °í¹ÎÇغ¼ ½Ã°£ÀÔ´Ï´Ù.

 

3. poi·Î Excel ÀÛ¼ºÇϱâ

Ŭ·¡½º¸¦ »õ·Î ÀÛ¼ºÇؼ­ ºÐ¸®½ÃÄ×½À´Ï´Ù.

±×¸®°í ±× Ŭ·¡½º ±¸Á¶´Â ¾Æ·¡¿Í °°½À´Ï´Ù.

 

DataSetVO dsv = new DataSetVO();
HSSFCell cell = null;
HSSFSheet sheet = null;
HSSFRow row = null;
HSSFWorkbook workbook = null;
int tr = 0;

 

public GetExcelHandler(DataSetVO dvo) { this.dsv = dvo; }//»ý¼ºÀÚ

public HSSFWorkbook excute() {}//½Ç È£Ãâ¸Þ¼­µå

private void headerMapper() {}//EXCEL Ä÷³ ¸ÅÆÛ

private void dataMapper() {}//DATA ¸ÅÆÛ

private HSSFCellStyle styleMapper(int no) {}//Style ¸ÅÆÛ

private void mergeJobCell() {}//¼¿ º´ÇÕ

 

ÀÛ¾÷ ¼ø¼­´Â ÀÌ·¸½À´Ï´Ù.

DB -> excute È£Ãâ(DataSetVO¿¡ header, data, style, megerinfo¸¦ ´ã¾Æ ³Ñ±è) ->

header ¼ÂÆÃ(style Àû¿ë) -> data¼ÂÆà -> ¼¿ º´ÇÕ

 

±×³É »ý°¢³ª´Â´ë·Î ¸· §°Å¶ó Ŭ·¡½º ¼³°è¿øÄ¢µµ Àß ¸ð¸£´Â ........ ±Ùµ¥ ±×°Ç ³ª¸ô¶ó¶ó ¤»¤»¤»

ÇÒ°Å´Ï±î »ý°ü¾øÀ½ ¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤»¤» ÀÌ Æ÷½ºÆÃÀÌ ÇØ°¡ µÇÁö ¾Ê±â¸¦ ¤»¤»

 

public GetExcelHandler(DataSetVO dvo) {
this.dsv = dvo;
}

»ý¼ºÀÚÀÔ´Ï´Ù. ÀÌ Å¬·¡½º¸¦ »ý¼ºÇÒ ´ç½Ã¿¡ ¼¿ º´ÇÕ Á¤º¸¶û data, header µ¥ÀÌÅ͵éÀ» ´ã°í ÀÖ½À´Ï´Ù.

styleµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù.

 

ÇØ´õ¸¦ ¸ÅÇÎÇÕ´Ï´Ù ¹¹ ÀÌ ¾ê±ä Ä÷³À» »ý¼ºÇÑ´Ù°¡ ½±°Ú³×¿ä.

private void headerMapper() {
for(tr=0; tr<dsv.getHeaderData().size(); tr++) {

//¾Æ±î Ä÷³À̶ó°í ¸¸µé¾îµÐ ¹è¿­À» ´ãÀº ¸®½ºÆ®¸¦ ¹Ýº¹ÇÕ´Ï´Ù. Ä÷³ÀÌ 2ÁÙÀ̶ó¸é 2¹ø µ¹°ÚÁÒ.
row = sheet.createRow((short) tr ); //»ý¼ºµÈ sheet¿¡ row¸¦ »ý¼ºÇÕ´Ï´Ù.
for(int i=0; i<dsv.getHeaderData().get(tr).length; i++) { //¸®½ºÆ®ÀÇ ¹è¿­À» ¹Ýº¹ÇÕ´Ï´Ù.
cell = row.createCell(i); //row¿¡ cellÀ» »ý¼ºÇÕ´Ï´Ù. i¶ó´Â °ÍÀº ¼¿ÀÇ ¼ø¼­¿¡¿ä.

cell.setCellStyle(styleMapper(0)); //¼¿ ½ºÅ¸ÀÏÀ» Àû¿ëÇØ¿ä. ¸Þ¼­µåÀε¥ ¾Æ·¡¼­ º¼°Ô¿ä.
cell.setCellValue(dsv.getHeaderData().get(tr)[i]); //cellvalue ¼ÂÆÃ
if(!StringUtils.isEmpty(dsv.getHeaderData().get(tr)[i])){

//ÀÌ°Ç Àú °°Àº °æ¿ì header°¡ 2ÁÙÀÌ¶ó º´ÇÕµµ ÇÏ°í °ªÀÌ ¾ø´Â ¼¿ÀÌ À־ .. ±×°É ºÐ°£Çϱâ À§ÇÔ
sheet.autoSizeColumn((short)i); //cellÀÌ nullÀÌ ¾Æ´Ï¶ó¸é ¼¿¿¡ µç text°ªÀ¸·Î Ä÷³ width¸¦ Á¶Á¤
sheet.setColumnWidth(i, (sheet.getColumnWidth(i))+1024 ); //±× »çÀÌÁî·Î ºÎÁ·Çؼ­ ´õ Å©°Ô Á¶
}
}
}
}

 

private void dataMapper() {

ArrayList<String> keySet = new ArrayList<String>();
Iterator<String> mapIter = dsv.getDataList().get(0).keySet().iterator();
while(mapIter.hasNext()) keySet.add(mapIter.next().toString());
//mapÀÇ Á£¹ø° index¸¦ °¡Á®¿Í¼­ keySetÀ» ¹Ì¸® ´ã¾Æ³õ¾Æ¿ä.

//keySet´Â µ¿ÀÏÇÏ´Ï±î ¹Ýº¹ÀûÀ¸·Î °¡Á®¿Ã ÇÊ¿ä ¾øÀÚ³ª¿ä.


for(int i=0; i<dsv.getDataList().size(); i++) {

//½Çµ¥ÀÌÅ͸¦ °¡Áö°í ÀÖ´Â ¸®½ºÆ®¸¦ ¹Ýº¹ÇÕ´Ï´Ù.
row = sheet.createRow(tr); //sheet¿¡ row¸¦ »ý¼ºÇÏ°í
cell = row.createCell(0);

//Excel ù¹ø° ¼¿¿¡ ¹øÈ£¿­À» ÁÖ±â À§ÇØ ÀϺη¯ 0À¸·Î ¹ÚÀº°Å¿¡¿ä.

cell.setCellValue(i+1); //±×¸®°í Áõ°¡ÇÏ´Â i °ªÀ» ³Ö¾ú½À´Ï´Ù.
for(String key : keySet) { //keySet List°¡ ¹Ýº¹ÇÕ´Ï´Ù.
String[] keyLocale = dsv.getDataList().get(i).get(key).split("@@");

//¾Æ±î DB¿¡ ½ÇDATA@@INDEX·Î ´ãÀº ¾Ö¸¦ splitÇØ¿ä.
cell = row.createCell(Integer.parseInt(keyLocale[1]));

//@@µÚÀÇ index·Î ÇØ´ç À§Ä¡¿¡ ¼¿À» »ý¼ºÇÕ´Ï´Ù~
sheet.autoSizeColumn((short)i); //¼¿ Å©±â¸£ Á¶Á¤Çϱ¸¿ä.
sheet.setColumnWidth(i, (sheet.getColumnWidth(i))+1024 );

//¸ðÀÚ¶ö °Í °°¾Æ¼­ Á» ´õ Å©°Ô
cell.setCellStyle(styleMapper(1)); //½ºÅ¸ÀÏ Àû¿ë
cell.setCellValue(keyLocale[0]); //@@ ¾ÕÀÇ °ªÀ¸·Î ¼¿ µ¥ÀÌÅÍ ¹Ý¿µ
}
tr++;

//ÀÌ trÀº ¹¹³Ä¸é¿ä. ¾Æ±î header ¸ÅÆÛ¿¡¼­ excel Çì´õµé ¼ÂÆà ÈÄ Çà¿¡ ´ëÇÑ °ªÀ» °¡Áö°í ÀÖ½À´Ï´Ù.

//±×·¡¾ß µ¥ÀÌÅÍ°¡ ¸î ÇàºÎÅÍ µé¾î°¡¾ß ÇÒÁö ¾Æ´Ï±î¿ä.
}
}

 

//½ºÅ¸ÀÏÀÌ¿¡¿ä. ±×³É header¿Í body·Î ³ª´²¼­ Àû¿ë¸¸Çß¾î¿ä.

//ÀÌ ºÎºÐÀÌ ¸ðµâÈ­ ÇÏ·Á´Ï±î Á» ¾Ö¸ÅÇÏ´õ¶ó±¸¿ä. ´Ù¸¥°Íµµ Àߵƴٶó°í º¸±ä Èûµë ÇÖÇÖ
private HSSFCellStyle styleMapper(int no) {

HSSFCellStyle CellStyle = workbook.createCellStyle();

if(no == 0) { //0À̸é header styleÀÌ°í
CellStyle.setBorderBottom(dsv.getHeaderBorder()); //¹ØÀ¸·Î 4ÁÙ±îÁø ¼¿ Å׵θ®
CellStyle.setBorderLeft(dsv.getHeaderBorder());
CellStyle.setBorderRight(dsv.getHeaderBorder());
CellStyle.setBorderTop(dsv.getHeaderBorder());
CellStyle.setFillPattern(dsv.getHeaderFillpattern()); //¼¿ ÆÐÅÏ
CellStyle.setFillForegroundColor(dsv.getHeaderFillforegroundColor()); //¼¿ ¹è°æ »ö
CellStyle.setAlignment(dsv.getHeaderAlignment()); //»ø Á¤·Ä
CellStyle.setVerticalAlignment(dsv.getHeaderVerticalAlignment());//¼¿ vÁ¤·Ä
} else { //1À̸é body styleÀÌ°Ô ¤»¤»
CellStyle.setAlignment(dsv.getBodyAlignment());
CellStyle.setVerticalAlignment(dsv.getBodyVerticalAlignment());
}
return CellStyle;
}

 

//mergeÀÔ´Ï´Ù

//merge ÀÛ¾÷À» ÇØÁÖ´Â ¿­ÀÌ

// sheet.addMergedRegion(new CellRangeAddress(Integer.parseInt(lvl_2[0]),v ...

//À̺κÐÀÔ´Ï´Ù. ±Ùµ¥ CellRangeAddress¿¡ »ý¼ºÀÚ¿¡ °ªÀ» ³Ñ°ÜÁà¾ß Çϴµ¥ ±× °ªÀÇ ÇüÅ´ ¾Æ·¡¿Í

//°°¾Æ¿ä.

// new CellRangeAddress(½ÃÀÛ row, Á¾·á row, ½ÃÀÛ col, Á¾·á col)

//±×·¡¼­ °ªÀ» ¹è¿­¿¡ ´ã¾Æ¼­ ÇϳªÀÇ index¿¡ 1@1@1@1# °ú°°ÀÌ ³Ö¾ú¾î¿ä. º´ÇÕµÉ ¼¿ÀÌ ¸¹´Ù¸é

//1@1@1@1#1@1@1@1#1@1@1@1#1@1@1@1#1@1@1@1# ÀÌ·¯Çí µÇ°ÚÁö¿ä.

private void mergeJobCell() {
String[] lvl_1 = dsv.getMergeData().split("#"); //#À¸·Î ÀÚ¸£°í
for(int lvl1=0; lvl1<lvl_1.length; lvl1++) {
String[] lvl_2 = lvl_1[lvl1].split("@") ; //@À¸·Î À߶ó
for(int lvl2 = 0; lvl2<lvl_2.length; lvl2++) {
sheet.addMergedRegion(new CellRangeAddress(Integer.parseInt(lvl_2[0]), Integer.parseInt(lv l_2[1]), Integer.parseInt(lvl_2[2]),Integer.parseInt(lvl_2[3])));

//º´ÇÕÇÕ´Ï´Ù.
}
}
}

 

ÀÌ°Ô À§¿¡ ¸Þ¼­µåµéÀ» ½ÇÇàÇÏ´Â ½ÇÇà ¸Þ¼­µå ¤»¤» À̰͸¸ public ÀÌÁö¿© ¤»¤»

¹°·Ð Ŭ·¡½º ³»ºÎ¿¡ »ý¼ºµÈ ¸Þ¼­µåÀ̱¸¿ä. ¿ÜºÎ¿¡¼­´Â Ŭ·¡½º »ý¼ºÈÄ¿¡ È£ÃâÇؾßÇÕ´Ï´Ù.

Ŭ·¡½ºÀÇ ¸®ÅÏ°ªÀº HSSFWorkbook ÇüÀ¸·Î return ÇÕ´Ï´Ù.

 

public HSSFWorkbook excute() {
workbook = new HSSFWorkbook();
sheet = workbook.createSheet(dsv.getSheetName());
if(dsv.getHeaderYn()) headerMapper();
dataMapper();
mergeJobCell();
return workbook;
}

 

4. ÀÏ´Ü HSSFWorkbook ÇüÅ·Πreturn±îÁö ¹Þ¾Ò¾î¿ä. ±×·¯¸é Àú°É ¾î¶»°Ô »ç¿ëÀÚ°¡ ´Ù¿î¹Þ°Ô ÇÒ¼öÀÖ³ª ? ¶ó´Â°Í ÀÏ´Ü streamÀ¸·Î ¶³±¸´Â°Ç °£´ÜÇÕ´Ï´Ù¸¸ .. À¥À» »ç¿ëÇÏ´Â »ç¿ëÀÚµéÀ» ±×·±°É ¹Ù¶óÁö ¾Ê½À´Ï´Ù. ´Ù¿î¹Þ¾Æ¾ß Á¦¸À ¾îµð·Î ´Ù¿î·ÎµåµÇ´ÂÁø ¾Ë¾Æ¾ßÁÒ ¤»¤»

 

 

=================¼öÁ¤ 2013³â 5¿ù 10ÀÏ=====================

±âÁ¸ÀÇ µ¥ÀÌÅͺ£À̽º¿¡¼­ ¹Þ¾Æ¿Â °ªÀ» ¾î¶»°Ô ¿¢¼¿ÀÇ Ä÷³°ú ¸ÅÇνÃÅ°´ÂÁö¿¡ ´ëÇÑ ³»¿ëÀÌ ¾Æ·¡¿Í °°¾ÒÁÒ.

map.put("drwng_nm", FormatData.nullCheck(rs.getString("drwng_nm"))+"@@3");

@@ÀÇ µÞºÎºÐÀÌ ¿¢¼¿ Ä÷³ À§Ä¡¸¦ ÁöÁ¤ÇÏ´Â ºÎºÐÀ̾ú½À´Ï´Ù.

ÀÌ°ÍÀ» Action´Ü¿¡¼­¸¸ ¼öÁ¤ÇÒ ¼ö ÀÖ°Ô ¸¸µé¾ú½À´Ï´Ù.

Áï, DAO´Â °Çµå¸± ÇÊ¿ä°¡ ¾ø´Â°Ì´Ï´Ù. return Çü¸¸ ¸ÂÀ¸¸é ±×³É °®´Ù°¡ ¾²¸é µÇ´Â°ÅÁÒ.

String[] titleArr = {"¹øÈ£@@cnt","µµ¸é°æ·Î","¼³°è°Ç¸í@@cnst_nm"....

 

ÀÌ·¸°Ô º¯°æÇß±¸¿ä. Ä÷³À» Á¤ÀÇÇÑ ¹è¿­ÀÇ µÚ¿¡ "@@HashMapÀÇ Å°°ª"À¸·Î ±¸¼ºÇß½À´Ï´Ù.

½ÇÁ¦·Î Àú ¹è¿­À» ÅëÇؼ­ µ¥ÀÌÅͺ£À̽º¿¡¼­ °¡Áö°í¿Â HashMapÀÇ µ¥ÀÌÅ͸¦ key°ªÀ» ÅëÇؼ­ °¡Áö°í ¿Ã ¼ö ÀÖ½À´Ï´Ù.

 

Á¤ÀÇÇصРŬ·¡½ºÀÇ »ý¼ºÀÚ¿¡ ³Ö¾îÁà¾ß ÇÒ ±âº» °ªµéÀÔ´Ï´Ù.

¾Æ·¡ÀÇ °ªÀ» ¼ÂÆÃÇÏ°í VO¸¦ ´øÁ®¾ß¸¸ÀÌ µ¥ÀÌÅÍ°¡ ³ª¿É´Ï´Ù.

´Ü, Style ¹«¹æÇÕ´Ï´Ù. ±Ùµ¥ ÁöÁ¤¾ÈÇÏ°Ô µÉ ½Ã, ¿øÇÏÁö ¾Ê´Â »ö»óÀÌ ¼ÂÆõÉÁöµµ ¸ð¸¨´Ï´Ù.

 

DataSetVO dsv = new DataSetVO();
dsv.setHeaderData(str); //Excel Ä÷³À» ±¸¼ºÇÒ String[]Çü ArrayList
dsv.setDataList(mapList); //Excel µ¥ÀÌÅ͸¦ ±¸¼ºÇÒ HashMap<String, String> Çü ArrayList
dsv.setSheetName("µµ¸é¸®½ºÆ®"); //Excel Sheet ¸í
dsv.setHeaderYn(true); //Excel Ä÷³À» ±¸¼ºÇÒÁö¿¡ ´ëÇÑ ¿©ºÎ
dsv.setHeaderBorder(HSSFCellStyle.BORDER_THIN);

//Excel Ä÷³ÀÇ Borer °ª (top, bottom, right, left ÅëÀÏ Àû¿ë)
dsv.setHeaderAlignment(HSSFCellStyle.ALIGN_CENTER);

//Excel Ä÷³ÀÇ Á¤·Ä °ª (HSSFCellStyle)
dsv.setHeaderVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); //Excel Ä÷³ÀÇ ¼¼·Î Á¤·Ä
dsv.setHeaderFillpattern(HSSFCellStyle.SOLID_FOREGROUND); //Excel Ä÷³ÀÇ ¹è°æ ÆÐÅÏ
dsv.setHeaderFillforegroundColor(HSSFColor.LIGHT_YELLOW.index); //Excel ¹è°æ »ö ÁöÁ¤
dsv.setBodyBorder(HSSFCellStyle.BORDER_DOTTED);

//Excel Body Data ¼¿ÀÇ border (right, left, bottom)
dsv.setBodyAlignment(HSSFCellStyle.ALIGN_LEFT); //Excel Body Data ¼¿ÀÇ °¡·Î Á¤·Ä
dsv.setBodyVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);

//Excel Body Data ¼¿ÀÇ ¼¼·Î Á¤·Ä
dsv.setMergeData(mgData);

GetExcelHandler geh = new GetExcelHandler(dsv); //¼ºÀÚ·Î DataSetVO¸¦ ³Ñ°ÜÁÜ
HSSFWorkbook wb = geh.excute();

 

geh.excute()¸¦ ÅëÇؼ­ HSSFWorkbookÇüÀÇ Excel µ¥ÀÌÅ͸¦ ¹Ýȯ¹Þ¾Æ º¼ ¼ö ÀÖ½À´Ï´Ù.

 

Ŭ·¡½º ÷ºÎÇصѰԿä ~ Á» ÇãÁ¢ÇÏÁö¸¸ Âü°íÇϼ¼¿ä ¤»¤»

 

GetExcelHandler.java

 

poi-3.7.jar