본문 바로가기
My Image
반응형

프로그래밍102

[Java] Try-with-resources 리소스 자동 반납(해제) 안녕하세요~ Limky입니다. 최근 코드리뷰를 해주신 과장님께서 Java 7 부터 생긴 Try-with-resources 를 이용해보라는 피드백을 받았습니다. 그래서 알아봤더니, 자바에서 리소스를 사용하고 닫아주는 코딩을 했을때 만약 해당 리소스 객체가 AutoCloseable 인터페이스를 상속받은 구현클래스라면 try-catch 구문 안에서 자동으로 리소스를 반납해준다는 내용이었습니다. Try-with-resources 사용 조건 요약!! 1. 자바 7 부터 지원 가능 2. try( ) 블록안에 리소스 객체를 할당 받아라 3. 해당 리소스 객체는 AutoCloseable 인터페이스를 상속받은 구현클래스여야 함 이게 무슨말이냐구요?? 코드를 보시면 쉽게 이해가 되실겁니다. 코드 리뷰를 받기전 코드입니다... 2021. 12. 6.
[JAVA] 클래스와 인터페이스의 접근제어자 JAVA에는 클래스와 인터페이스에서 사용하는 접근제어자가 있습니다. 접근제어자는 다른 클래스, 다른 패키지 등등에서 멤버 변수 및 메서드에 함부로 접근하지 못하도록 하는것이 목적입니다. 각 접근제어자의 접근이 허용되는 범위는 아래와 같습니다. 접근제어자 접근 허용 범위 동일 클래스 동일 패키지 다른 패키지 자식 클래스 다른 패키지 public 외부 클래스에서 자유롭게 접근 가능 ○ ○ ○ ○ protected 같은 패키지 내 클래스 또는 자식 클래스 접근 가능 ○ ○ ○ default 같은 패키지 내 클래스 접근 가능(접근제어자 생략시) ○ ○ private 외부 클래스 모두 접근 불가 (자기자신만 접근 가능) ○ 단!! 인터페이스의 접근제어자는 무조건 public 입니다. 왜냐면 인터페이스는 구현(실체.. 2021. 11. 25.
POI라이브러리 + AJax + myBatis resultHandler 이용한 excel 대용량 다운로드 기능 구현(심플버전)_2편 안녕하세요. limky 입니다. 오늘은 POI라이브버리 + AJax + myBatis resultHandler 를 통한 대용량 excel 다운로드 기능 2편에 대한 내용입니다. 지난 1편에선 excel 다운로드 기능 구현에 고려할 사항 3가지가 무 POI 라이브버리 설정과 화면단 소스에 대해서 다뤘습니다. 이번 2편에서는 서버 로직에 대해서 이야기 하고자 합니다. 우선 대용량 excel 다운로드 기능을 구현하기 위해 백단에서는 POI 라이브러리로 excel 다운로드 기능이 동작되도록 개발했고, 확장성을 고려한 추상화 작업, 그리고 OOM 방지를 위한 myBatis resultHandler 적용에 대한 작업을 했습니다. 다시 정리하면 아래 3가지 step입니다. 1. POI 라이브러리를 활용한 excel .. 2021. 11. 15.
POI라이브러리 + AJax + myBatis resultHandler 이용한 excel 대용량 다운로드 기능 구현(심플버전)_1편 안녕하세요. limky 입니다. 최근 업무 중에 대용량 excel 다운로드를 구현할 일이 생겼는데요. 제가 개인적으로 삽질하면서 구현한 excel 대용량 다운로드 기능을 어떻게 개발했는지 공유하고자 합니다. 우선,,,개발하게된 배경을 설명드리면, 기존에는 단순히 jsp에 table을 그리고 해당 table에 값을 매핑하여 excel 다운로드를 하였는데요. 최근들어 신규 상품 또는 신규 서비스가 출시되면서 이전과 달리 데이터가 많이 적재되었습니다. (하루에 3만건이상 적재됨...) 이로 인해 한꺼번에 많은 데이터를 읽고 쓰는 과정에서 서버에 과부하를 주었고 OOM을 발생시켜 심지어 서버가 다운되는 사태까지 일어났습니다. 이를 방지하고자 아래와 같은 3가지 해결책을 생각해보았습니다. 1. 화면에 있는 엑셀다.. 2021. 11. 12.
반응형