프로젝트의 결과물이 거의 나옴에 따라 운영서버에 배포해서 이것저것 보는 중에 이상하게 리소스파일들 (js, font, css ) 을 계속 로드해오는 것을 확인했다. 분명 로컬에서는 느끼지 못했던 현저한 속도저하를 느꼈다. 우씨 로컬에서도 느꼈으면 해결하고 배포했을 텐데... 뭐지 싶어 리소스들 response header 를 봤더니 cache-control이 죄다 no-store 로 되어있는 것이 아닌가... no-store 는 캐싱을 하지 않겠다 이기 때문에 매번 리소스를 로드하게 된다. 리소스 캐시컨트롤 설정은 여러방법이 있는데 나는 간단한 것을 좋아하여 application.yml 에 리소스 캐시 설정을 추가했다. spring: web: resources: cache: cachecontrol: no..
SpringBoot 에 h2 를 연결해서 JPA를 사용하는 기초 방법을 작성해본다. 사내에는 보통 구축된 DB가 있기 때문에 DB가 정해지지 않은 테스트 시 빼고는 잘 사용할 일이 없었는데 스터디하다가 연결하게 되어 남겨본다. 프로젝트 생성 IntelliJ 2023.3.4 를 사용하니까 이제 spring 프로젝트가 3버전으로 생성되어 jdk8 버전 프로젝트를 자동 생성할 수 없는 것 같다. 바꾸고 싶다면 상위버전으로 생성뒤에 다운그레이드 해야 할 듯 싶다? 다음으로 넘어가서 디펜던시를 추가하자 간단하게 필요한 녀석들만 추가해주고 프로젝트를 생성하자 아래와 같이 build.gradle 이 생성될 것이다. plugins { id 'java' id 'org.springframework.boot' version..
Oracle java jdk 계정 맨날 까먹어서 받기도 귀찮을 뿐더러 open-jdk 가 잘 활성화 된 탓에 굳이 오라클 jdk 를 설치 안해도 되는 상황이기에 open-jdk 를 버전과 OS 환경에 알맞춰 아주 쉽게 다운로드 받는 사이트를 다 아시겠지만 추천드린다. Deploy Open Source Backed by Enterprise Services | OpenLogic OpenLogic enabled us to avoid downtime, reduce organizational costs, maintain security compliance, and facilitate an overall source risk strategy. www.openlogic.com 위 오픈로직닷컴 사이트에 들어가셔서 Do..
젠킨스 2.263 버전을 사용하던 서버에서 jdk 를 업데이트 하면서 문제가 발생했다. 해당 서버의 젠킨스는 tar 로 설치가 되어있었고, 젠킨스에 물려있는 JAVA_HOME 설정이 자바 버전명 입력이었다. java-1.8.0-openjdk /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.275.b01-0.el7_9.x86_64 해당 값에 링크값을 걸었으면 좋았으련만... 버전폴더째로 입력해놔서 jdk 가 버전업 되면서 jdk 디렉토리가 손실된 상태가 되었다. 여기서! 저 부분만 수정하고 끝냈으면 좋았으련만... 서버 관리 한답시고 젠킨스 업그레이드를 시도했다. 그리고 젠킨스 업데이트를 dnf 나 yum 으로 업데이트를 해왔지 저 버튼으로 시도해본건 처음. 사실 운영서버는 아니어서 호..
엔티티의 LocalDateTime 날짜형식 데이터를 년월(YYYY-MM) 로만 비교해줘야 하는 상황이 생겼다. 그 동안은 String 형식으로 넘어온 날짜데이터를 비교할 때, AttributeConverter 를 사용해서 mapstruct 에서나 querydsl 에서 사용해왔었다. [Mapstruct] LocalDateTime To String Converter, 엔티티와 DTO간 타입이 다를때 맵핑하기 (feat.AttributeConverter) 보통 날짜값을 사용할 때 db와 뷰와의 관계에서 컨버팅을 자주 하게 된다. DB에는 예쁘게 들어가있지만 사용자 화면에 그대로 뿌리면 보통 우리가 보던 포맷이 아니기 때문에 매우 별로다. 그래 jong-bae.tistory.com 그 동안 비교값을 LocalD..
제가 사용하는 인텔리제이 최적 VM 옵션을 공유합니다. -server -Xms4096m -Xmx4096m -XX:NewRatio=3 -Xss16m -XX:+AlwaysPreTouch -XX:+TieredCompilation -XX:ReservedCodeCacheSize=512m -XX:SoftRefLRUPolicyMSPerMB=50 -XX:+UseCodeCacheFlushing -Dsun.io.useCanonCaches=false-ea -XX:CICompilerCount=4 -Dsun.io.useCanonPrefixCache=false -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -Djdk.attach.allowAttachSelf=tru..
회사 PC를 오랜기간 사용해서 변경하고 소스폴더들이 있는 디스크만 옮겼는데 OS 유저가 변경되어 올바른 깃 로컬 레포지토리가 동작이 되지 않았다. 근데 이는 간단하게 해결 할 수 있다. git status 를 입력하면 company@jaybee MINGW64 /d/GitHub/project $ git status fatal: detected dubious ownership in repository at 'D:/GitHub/project' 'D:/GitHub/project' is owned by: BUILTIN/Administrators (S-1-5-32-544) but the current user is: jaybee/company (S-1-5-21-3506454000-962289665-893259382..