티스토리 뷰
반응형
이전 글에서 Java Excel Export 기능의 코드를 구현해보았다.
필자는 이러한 코드를 모든 프로젝트에 중복으로 구현하기 번거로워 라이브러리로 Export 하여 쓸려고 하여 JitPack에 Github Repo를 등록하여 사용 할려고 한다.
프로젝트에 라이브러리 추가하기
- Gradle
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
dependencies {
implementation 'com.github.russell-seo:ExcelExport:master-SNAPSHOT'
}
- Maven
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<dependency>
<groupId>com.github.russell-seo</groupId>
<artifactId>ExcelExport</artifactId>
<version>master-SNAPSHOT</version>
</dependency>
JAVA 프로젝트에 적용하기
- 해당 라이브러리를 추가하면 아래와 같이 추가된 것을 볼 수 있다.
- 이제 간편하게 Excel 을 다운로드 하는 코드를 구현해보자
1. EXPORT 할 DTO 정의하기
@Data
public class Req {
@ExcelColumn(HeaderName = "이름", DataType = ExportColumn.DataType.none)
private String name;
@ExcelColumn(HeaderName = "아이디", DataType = ExportColumn.DataType.none)
private String id;
}
- @ExcelColumn 어노테이션을 사용하여 데이터 타입과 헤더를 정의한다.
2. 데이터를 받을 Controller 를 정의한다
@RestController
public class ReqController {
@PostMapping(value = "/excel")
public void excelExport(@RequestBody List<Req> req, HttpServletResponse res){
ExcelExport<Req> reqExcelExport = new ExcelExport<>(req, Req.class);
try {
reqExcelExport.write(res, "테스트");
} catch (IOException e) {
e.printStackTrace();
}
}
}
- Excel 파일에 뿌려줄 데이터와 HttpServeletResponse 를 파라미터로 받는다.
- ExcelExport 라는 객체를 생성하고 파라미터로 받는 req와 DTO 클래스를 파라미터로 넘겨준다.
- ExcelExport 에 있는 write() 메소드를 호출하면 끝
- 호출하는 쪽에서 해당 파일을 다운로드 받는 코드만 작성해주면 손쉽게 Excel 을 다운로드 받을 수 있다.
반응형
'Java' 카테고리의 다른 글
[Java]비동기 CompletableFuture 로 안전하게 (0) | 2023.04.12 |
---|---|
[Java] Optional 로 null 처리 (0) | 2023.03.21 |
Java 메모리구조(Heap, Stack) (0) | 2023.03.17 |
Java로 Excel 다운로드 쉽게하기(@어노테이션으로) (0) | 2023.02.19 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Index
- spring boot
- java
- spring mvc
- github
- database
- Excel
- 비동기
- mysql
- TCP
- 데이터베이스
- oauth2
- R-Tree
- 다운로드
- jenkins
- 스프링
- Spring Security
- jpa
- 논블로킹
- GIS
- db
- 공간쿼리
- DispatcherServlet
- 영속성 컨텍스트
- thread
- 인덱스
- 네트워크
- spring
- lock
- 쓰레드
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함