시청 관련하여 작업을 진행하던 중에 PermGen space라는 이슈가 발생해서 이와 관련 처리 방법에 대하여 정리하고자 합니다. 근본적으로 발생 원인은 Tomcat이 가용할 수 있는 최대 메모리를 넘어 섰을 경우 발생하는 이슈입니다. 이런 최대 메모리 초과 이슈의 조건은 여러가지가 있겠지만 대표적인 발생 원인은 코드 작성 시 메모리를 신경쓰지 않고 만들었거나? 또는 톰켓 자체 설정의 문제가 될 수 있습니다. 이 문제 이슈를 해결하기 위해서 대표적인 방법 두가지가 있습니다. 일단 대표적인 두가지라고 했는데 뭐 제일 발생하지 않도록 하는 방법은 코드를 잘 짜는거?가 우선적으로 되야겠지만 두가지를 말해 보자면 첫번째 : 톰켓 설정 하는 것 기본적인 톰켓 설정의 메모리 크기값이 있겠지만 이러한 이슈가 발생할 ..
LocalDate, DateTimeFormatter, ChronoUnit , IntStream 을 이용 1. LocalDate : 날짜를 나타내는 불변의 날짜-시간 객체입니다. 종종 년-월-일로 간주됩니다. 참고 : LocalDate (자바 플랫폼 SE 8) (oracle.com) 2. DateTimeFormatter : 날짜, 시간 개체를 처리하도록 도와주는 포맷터(Formatter) 이다. 참고 : DateTimeFormatter (자바 플랫폼 SE 8) (oracle.com) 3. ChronoUnit : Enum 클래스로 날짜 기간 단위의 표준 집합이다. 날짜 , 시간 또는 날짜-시간을 조작할 수 있는 단위 기반 액세스를 제공한다. ChronoUnit.DAYS.between(Temporal tmp,..
사이드 프로젝트로 Spring이 아닌 jsp/servlet 을 이용하여 프로젝트를 만든 적이 있습니다. Spring은 파일 처리할때 정말 편리하지만 jsp/servlet은 Spring 처럼 편리함을 제공하지 않고 직접 처리를 해줘야 했었습니다. 특히 파일 처리할 때 이리 불편할 수가 없었습니다. 그래서 파일처리 방식을 커스텀하여 직접 사용하였던 방식들을 공유하려고 합니다. Jsp/servlet 에서 기본적으로 파일업로드를 진행했을 때 사용하는 것이 MultipartRequest를 제공하는 라이브러리인 cors.jar 를 많이 사용합니다. 하지만 필자가 MultipartRequest 를 사용하면서 어떻게 보면 편리하긴 한데 너무 제한적인 부분들이 많았고 컨트롤이 어려웠던 부분들이 있었습니다. 그래서 필자는..
FilterRegistrationBean를 이용해서 접속 ip를 체크하는 filter를 추가하였습니다. 해당 Filter 메소드에서 Service를 통해 ip를 조회해야했지만 Filter class 안에 선언했던 @Autowired가 null 값으로 나오는 이슈가 발생하였습니다. java.lang.NullPointerException: Cannot invoke "cashnamu.cashnamu_v2.www.auth.admin.service.AllowIpService.selectAllowIpList(cashnamu.cashnamu_v2.www.auth.admin.dto.AllowIpDefaultlDTO)" because "this.allowIpService" is null 이슈 원인 코드 TestFilte..
필터(Filter)는 J2EE 표준 스펙 기능으로 디스패처 서블릿(Dispatcher Servlet)에 요청이 전달되기 전/후에 url 패턴에 맞는 모든 요청에 대해 부가작업을 처리할 수 있는 기능을 제공한다. 라고 나와 있는데 걍 스프링 컨테이너가 아닌 톰캣과 같은 웹 컨테이너(서블릿 컨테이너)에 의해 관리가 되는 것이고(스프링 빈으로 등록은 된다), 디스패처 서블릿 전/후에 처리하는 것을 말합니다. 더 간단하게 얘기하면 클라이언트로부터 요청한 내용을 servlet으로 전송이 되는데 그전에 한번 걸러내는 작업을 하는 역할이 filter 라고 합니다. Filter 필터(Filter) 인터페이스는 init, doFilter, destroy 로 구성되어있다. public interface Filter { p..
기존에 pdf를 생성하려고 하면 프론트 단에서 css를 이용하거나 js를 이용해서 처리할 수 가 있다. 하지만 지금 정리하고 있는 내용은 조금 사뭇 다른 내용이다.... 클라이언트로부터 등록하는 정보에 대한 pdf를 만드는 내용이다. 여기까지만 들었을 때는 그냥 정보가 등록되고 나면 해당 등록된 화면에서 스크립트 처리하면 되겠지 하지만 막상 세세하게 내용을 열어보면 다르다. 등록된 정보들을 토대로 조회했을 때 pdf 파일들을 뽑을 수 있도록 하는 것이다. Spring 에서는 MVC 개념으로 해당 데이터를 db로 부터 가져와서 view 단에 뿌려주는 형식이다. 그렇다보니 기본적인 pdf 파일로 변환하는건 거진 데이터가 뿌려지는 view단에서 스크립트를 통해 처리를 하게 된다. 하지만 지금은 그와 다른 형식..
- Total
- Today
- Yesterday
- MySQL
- 격리수준
- dockerfile
- LocalDate
- docker
- Java
- 캐시
- mybatis
- spring
- hazelcast
- centos7
- insert
- 컨테이너
- 리눅스
- leatcode
- 권한
- 네이버 클라우드
- Cache
- 알고리즘
- Quartz
- Linux
- Lock
- 스케줄러
- 도커
- 캘린더
- 정의
- 이미지
- ncp
- 개념 이해하기
- dfs
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |