IT 천국 (127) 썸네일형 리스트형 [Synology] Synology nas를 이용해 다른 PC wol로 켜기 얼마전까지 KT 기가 wifi 공유기를 DDNS설정 및 포트포워딩 설정해서 외부에서 잘 사용하고 있었는데 최근에 공유기 리셋 후 다시 설정해보니 동작을 하지 않는것을 발견하였다. 외부포트는 임의로 설정하고 공유기 IP 주소와 웹 서버 포트 8899를 포트포워딩으로 연결해주려고 하면 아래와 같이 에러를 내뿜고 저장이 안된다. 물론 DDNS 설정도 해주었다. 웹 서핑을 해보니 최근 펌웨어에서 공유기 어드민 원격 접속을 못하도록 막은거 같다.. 보안을 생각한다면 당연한 조치라고 생각을 한다. 그나저나 외부에서도 공유기로 들어와서 스마트 부팅 기능으로 데스크탑을 잘 켜왔었는데.. 갑자기 공유기 WOL기능을 사용못한다고 하니 너무 갑갑했다.. 급할때 로또 사야할때... 집 컴퓨터로 개발 동작 확인할때는 원격 기능.. [Spring boot] Exception에 따라 조건부로 Transaction Rollback 하기 아주 흔한 케이스는 아니지만 Rest Api호출 후 Exception으로 에러 코드를 전달할 시에 대부분은 Transaction rollback으로 DB에 저장된 내용은 다시 취소를 한다 그러나 특정 케이스에서는 DB 상태는 Rollback하지 않고 Front 단에는 에러코드를 전달하고 싶을때가 있다. 아래는 보통 사용하는 Transactional 처리이다. @Transactional public void executeService() { RestHistoryVO vo = new RestHistoryVO(); vo.setCalldtlsId(Integer.parseInt(Instant.now() .atZone(ZoneId.of("Asia/Seoul")) .format(DateTimeFormatter.ofP.. [Postgresql] max_connection 늘리기, 현재 connection 확인 (windows) postgresql db 를 실행하다 보면 connection pool이 다 차서 애플리케이션에서 연결을 못한다는 메세지를 볼 때가 있다. 현재 설치되어 있는 postgresql db의 설정값들을 쿼리로 쉽게 알아볼 수 있다. 현재 DB 설정값 조회 Heidisql 등의 DB Client 툴을 실행 시키고 Postgresql db에 접속 한다. 아래 쿼리를 수행하면 현재 설정되어있는 DB system 설정을 볼 수 있다 SELECT * FROM pg_settings; 여러가지 설정 중에 max_connections 값이 최대 동시 접속수를 지정하는 값이다. 기본값은 100으로 설정되어 있음을 볼 수 있다. 현재 사용되는 connection 정보 조회 최대 동시 접속 값은 찾았으나 여러 어플리케이션 수행중.. [Adobe XD] 컨트롤 정리 화면 확대 Ctrl 키 + 마우스 휠 화면 위아래 스크롤 마우스 휠 상하 조정 화면 좌우 스크롤 Shift 키 + 마우스 휠 상하 조정 [Mybatis] Mybatis interceptor 활용하기 Mybatis로 DB mapper를 수행하는데 interceptor를 등록하면 DB 쿼리 실행 전후로 등록한 interceptor를 수행해서 사전 작업을 할 수 있다. 예를 들어 조회 쿼리 수행시 Paging 처리를 일괄적으로 interceptor에서 할 수 도 있고 Mybatis 쿼리 인자로 세션 정보를 전역에서 설정해서 모든 쿼리마다 해당 세션 값을 넣을 필요 없이 만들 수도 있다. Mybatis interceptor 설정 방법 mybatis-config.xml 생성 아래와 같이 mybatis-config.xml 설정 파일을 생성한다. 기존에 이미 사용중이라면 plugins 밑에 interceptor class를 등록해준다. Interceptor Class 정의 Interceptor Class를 만들.. [Spring boot] Spring boot test시 Static class mock 만들기 JUnit으로 테스트 작성 시 Static Class를 Mocking해서 테스트를 해야할 경우가 많이 생긴다. sprin-boot-starter-test 패키지에서 기본으로 제공하는 mockito-core패키지에는 static class mocking을 위해 아래 함수를 제공한다. MockedStatic mockSecurityUtils = Mockito.mockStatic(SecurityUtils.class); mockSecurityUtils.when(() -> getPlainCredential(anyString(), any())).thenReturn("1q2w3e4r5t!!"); Mokito.mockStatic 메소드에 Mocking을 할 static class를 지정해 주고 when, thenRetu.. [Tistory CSS] pre 태그 모바일 화면에서 가로 스크롤 나타내기 코드 블럭이나 예시 화면을 생성하는 pre 태그가 모바일 화면에서는 가로폭에 맞게 줄어들어 긴 문장이 다음줄로 넘어가게 된다. 그러면 가독성이 무척 떨어지게 된다. 티스토리 블로그 -> 스킨편집 -> HTML 편집 -> CSS 로 들어가서 아래 클래스를 다음과 같이 변경하면 가로폭이 작은 화면에서는 스크롤이 생기고 코드블럭 단락이 줄바뀜되지 않고 유지 된다. .entry-content pre { word-break:break-all; white-space:pre-wrap; /* word-wrap:break-word; */ } .entry-content pre code { padding: 20px; white-space: pre; overflow-x: auto; -webkit-overflow-scrolli.. [Spring boot] Spring Boot Test Sql script 활용하기 Backend api 개발 시 Spring boot test로 Unittest를 많이 하게 된다. 그러나 항상 고민하는게 실제 Insert 나 Update로 특정 DB 상태를 바꿀 시 다음 테스트에 영향을 준다는 것이다. 각각의 테스트 메소드가 종료시점에 해당 테스트에서 변경된 내용을 돌려줄 수 있으나 정리 로직을 추가하는것은 테스트 본연의 목표와 다른 부가 작업일 뿐이다. Spring Boot Test 에서는 각 메소드 실행 전후로 외부 sql script를 실행할 수 있게 설정을 가지고 있다. 간단하게 메소드 전에 DB 데이터들을 삽입하고 메소드 실행 후에 DB 데이터 전체를 지우도록 하면 중간에 테스트 도중 들어가거나 변경된 내용들도 손쉽게 리셋하는 효과를 가질수 있다. Unittest 설정 예시 .. 이전 1 ··· 4 5 6 7 8 9 10 ··· 16 다음