xlsmapper를 만져봤어요.
이것은 무엇이냐
알았으니까xlsmapper 조금 만져봤어요.
시도된 환경
환경 구조
여기.에 적힌 대로 하면 됩니다.
시도된 내용
현재 원하는 사람은 Excel 파일을 읽는 사람이기 때문에 파일만 읽을 수 있습니다.
Java 코드
PojoSheet.java
import com.gh.mygreen.xlsmapper.annotation.LabelledCellType;
import com.gh.mygreen.xlsmapper.annotation.XlsLabelledCell;
import com.gh.mygreen.xlsmapper.annotation.XlsSheet;
@XlsSheet(name="Sheet1")
public class PojoSheet {
@XlsLabelledCell(label="midashi1", type=LabelledCellType.Bottom)
String cell1;
@XlsLabelledCell(label="midashi2", type=LabelledCellType.Bottom)
String cell2;
@XlsLabelledCell(label="midashi3", type=LabelledCellType.Bottom)
String cell3;
@XlsLabelledCell(label="midashi4", type=LabelledCellType.Bottom)
String cell4;
@XlsLabelledCell(label="midashi5", type=LabelledCellType.Bottom)
String cell5;
}
Test.java (주 클래스)
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import com.gh.mygreen.xlsmapper.XlsMapper;
import com.gh.mygreen.xlsmapper.XlsMapperException;
public class Test {
private static final String xlsxFileAddress = "G:\\work\\Test.xlsx";
public static void main(String[] args) throws FileNotFoundException, XlsMapperException {
XlsMapper xlsMapper = new XlsMapper();
Object[] sheets = xlsMapper.loadMultiple(
new FileInputStream(xlsxFileAddress), // 読み込むExcelファイル
new Class[]{PojoSheet.class} // アノテーションを付与したクラス。
);
for(Object obj : sheets) {
PojoSheet s = (PojoSheet)obj;
System.out.println(s.cell1 + ", " + s.cell2 + ", " + s.cell3 + ", " + s.cell4 + ", " + s.cell5);
}
}
}
테스트된 Excel 파일
처리 결과
Excel 파일의 컨텐트와 Java 코드가 올바르게 조합된 경우
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Cell1, Cell2, Cell3, null, Cell5
Excel 파일의 컨텐트와 Java 코드가 올바르지 않은 경우(제목의 문이 다른 경우)
제목이 일치하는 항목이 없다고 합니다. 오류입니다.Exception in thread "main" com.gh.mygreen.xlsmapper.fieldprocessor.CellNotFoundException: Cell 'midashi5' not found in sheet 'Sheet1'
at com.gh.mygreen.xlsmapper.Utils.getCell(Utils.java:1064)
at com.gh.mygreen.xlsmapper.Utils.getCell(Utils.java:1031)
:
총결산
장점
현재 원하는 사람은 Excel 파일을 읽는 사람이기 때문에 파일만 읽을 수 있습니다.
Java 코드
PojoSheet.java
import com.gh.mygreen.xlsmapper.annotation.LabelledCellType;
import com.gh.mygreen.xlsmapper.annotation.XlsLabelledCell;
import com.gh.mygreen.xlsmapper.annotation.XlsSheet;
@XlsSheet(name="Sheet1")
public class PojoSheet {
@XlsLabelledCell(label="midashi1", type=LabelledCellType.Bottom)
String cell1;
@XlsLabelledCell(label="midashi2", type=LabelledCellType.Bottom)
String cell2;
@XlsLabelledCell(label="midashi3", type=LabelledCellType.Bottom)
String cell3;
@XlsLabelledCell(label="midashi4", type=LabelledCellType.Bottom)
String cell4;
@XlsLabelledCell(label="midashi5", type=LabelledCellType.Bottom)
String cell5;
}
Test.java (주 클래스)
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import com.gh.mygreen.xlsmapper.XlsMapper;
import com.gh.mygreen.xlsmapper.XlsMapperException;
public class Test {
private static final String xlsxFileAddress = "G:\\work\\Test.xlsx";
public static void main(String[] args) throws FileNotFoundException, XlsMapperException {
XlsMapper xlsMapper = new XlsMapper();
Object[] sheets = xlsMapper.loadMultiple(
new FileInputStream(xlsxFileAddress), // 読み込むExcelファイル
new Class[]{PojoSheet.class} // アノテーションを付与したクラス。
);
for(Object obj : sheets) {
PojoSheet s = (PojoSheet)obj;
System.out.println(s.cell1 + ", " + s.cell2 + ", " + s.cell3 + ", " + s.cell4 + ", " + s.cell5);
}
}
}
테스트된 Excel 파일
처리 결과
Excel 파일의 컨텐트와 Java 코드가 올바르게 조합된 경우
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Cell1, Cell2, Cell3, null, Cell5
Excel 파일의 컨텐트와 Java 코드가 올바르지 않은 경우(제목의 문이 다른 경우)
제목이 일치하는 항목이 없다고 합니다. 오류입니다.
Exception in thread "main" com.gh.mygreen.xlsmapper.fieldprocessor.CellNotFoundException: Cell 'midashi5' not found in sheet 'Sheet1'
at com.gh.mygreen.xlsmapper.Utils.getCell(Utils.java:1064)
at com.gh.mygreen.xlsmapper.Utils.getCell(Utils.java:1031)
:
총결산
장점
관심 사항
Reference
이 문제에 관하여(xlsmapper를 만져봤어요.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/deaf_tadashi/items/426598e8de98a02b82a2텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)