Springboot JPA Timezone 설명 (데이터베이스와 Springboot 간의 타임존 처리 방식)
·
Programming/BackEnd
- JPA 에서 DATETIME 변수를 다룰 때는 자동으로 TimeZone 을 맞춰줍니다.    예를들어 JPA 가 돌아가는 Springboot 의 타임존 설정이 UTC,    데이터베이스가 KST 시간을 사용중이라고 했을 때,    JPA 에서 UTC 시간인 2024-05-02 03:38:46.026 를 데이터베이스에 입력하면,     데이터베이스에는 실제로는 KST 시간인 2024-05-02 12:38:46.026 가 저장이 되며,    데이터베이스에서 KST 시간인 2024-05-02 12:38:46.026 를 조회하면,     UTC 시간을 사용중인 스프링부트 시스템에 맞춰서 JPA 는,     2024-05-02 03:38:46.026 라고 데이터를 변환해줄 것입니다. - Springboot 에..
[Kotlin] List 타입 종류
·
Programming/ETC
- 리스트 타입의 종류 List : 변경이 불가능한 리스트입니다. MutableList : MutableList 는 Kotlin 의 인터페이스로, 변경 가능한 리스트를 나타냅니다. 반대되는 개념으로는, 변경이 불가능한 그냥 List 타입이 있습니다. 이는 인터페이스이므로 특정한 구현체에 의존하지 않으며, 여러 구현체가 존재할 수 있습니다. 대표적인 구현체로는 ArrayList 와 LinkedList 등이 있습니다. 만약 mutableListOf() 함수로 객체를 초기화 한다면 ArrayList 가 생성될 것입니다. ArrayList : MutableList 의 일종입니다. 내부적으로 배열을 사용하여 요소를 저장하는 리스트 구현체로, ..
JVM 메모리 누수 방지를 위한 체크사항
·
Programming/ETC
- Java, Kotlin 언어를 사용하면 C/C++ 과 다르게 Garbage Collector 가 자동으로 메모리 힙 영역을 정리해주므로, 메모리 관리에 엄격하지 않아도 됩니다.하지만 백엔드 서버 개발을 맡게된다면 이에 접근하는 클라이언트와 서버가 N 대 1 관계가 형성되기 때문에 실제 서비스에서 메모리 관련 누수에 주의해야만 할 것입니다.아래는 Java 계열 언어를 사용시 메모리 누수 방지를 위해 체크해야할 사항들을 모아둔 것입니다. 1. Static 메모리 사용을 주의하세요. Static 영역에 작성한 변수와 데이터는 프로그램의 처음과 끝까지 사라지지 않습니다. 이 영역의 사용을 지양하도록 합시다. 2. 해제를 전제로 만들어진 라이브러리를 사용할 때에는 꼭 사용 후 해제하도록 합시다...
Flutter Web 포트번호 설정 + 휴대폰 혹은 다른 컴퓨터에서 접근하기
·
Programming/FrontEnd
- Flutter 웹 개발 후 IDE 로 실행을 하면 할때마다 포트번호가 다르게 설정이 됩니다.예를들어 포트번호를 8081 로 하고싶다면, 위와 같이 실행환경 설정에서 Additional run args 안에 --web-port=8081 를 추가하면 됩니다. - 웹 프로그램을 실행하고, 같은 컴퓨터의 웹브라우저가 아니라, 휴대폰의 웹브라우저로 접속해서 동작을 확인하고 싶을 때가 있을 수 있습니다. 그럴때는, 커맨드 창을 열어서, ipconfig -all 과 같이 본인 ip 를 확인합니다.위에서 보이는 바와 같이 제 IP 주소는 192.168.0.11 이네요. 참고로, 198.168 로 시작하는 주소는 외부 IP 가 아니라 공유기와 같은 내부에서 할당되는 IP 이므로 위 IP 로 접속 가능한 것은 같은 ..