본문 바로가기

전체 글129

[Thymeleaf] 타임리프 th:onclick 사용하기 타임리프 템플릿을 사용하면서 onclick 이벤트를 걸 때, 자꾸 헷갈리고 잊어버리는 부분이 있어서 기록함. 1. location.href 이용한 경로 이동th:onclick="|location.href='@{/notice/info}'|" 2 .태그 내에 attribute를 주어서 함수 호출 할 때, 파라미터로 넘기기 3. location.href 경로 이동 시에 requestParam으로 파라미터를 넘기는 경우1) 단일 파라미터인 경우아래와 같은 예시는 실제로는 Url이 이렇게 찍힌다 -> ( /notice/ranking?rankCode=RANK_0001 )공지 랭킹 2) 파라미터가 여러 개인 경우아래와 같은 예시는 실제로는 Url이 이렇게 찍힌다 -> ( /event/ranking?rankCd=RAN.. 2022. 7. 30.
[Spring Boot] .jar 배포 후 resources 파일 경로 찾기 문제 상황 진행하고 있는 프로젝트 개발 서버에 jar 파일로 말아 배포시켰다. 그런데 한 메소드에서 해당 파일 경로를 읽어오지 못하는 문제가 발생했다. 분명 local에서는 문제없이 잘 읽어 오는데, 배포한 jar파일에서는 파일을 찾지 못하는 에러가 계속 났다. 아래는 로컬에서 잘 돌아가는 기존 소스 URL resource = getClass().getClassLoader().getResource("templates/fo/ko/utility/terms"); File dir = new File(resource != null ? resource.getPath() : null); String[] filenames = dir.list(); // 하위 파일들의 이름을 배열에 담는다. 원인 보통 IDE등에서 개발하.. 2022. 6. 10.
[Git] git ignore한 파일이 함께 올라 갈 때 프로젝트 진행하다보면 Git에 올라가서는 안 될 파일이나 IDE에 종속되어 협업에 문제가 될만한 파일들은 .gitignore 설정파일에 기입하여 관리한다.그런데  .gitignore 설정파일에 작성하더라도 이게 적용이 안 되는 경우가 종종 발생한다. 일반적인 경우는 git의 캐시가 문제가 되어 .gitignore 파일이 적용되지 않는 것이다. 이럴 땐 캐시를 삭제한 후 다시 push하면 된다.  git config --list git rm -r --cached .git add . git commit -m "remove cache for gitignore" 위 명령어를 순서대로 IDE 터미널창에 입력!캐시를 지워 해결한다. 2022. 5. 12.
[Thymeleaf] 유용한 타임리프 문법 #2 1. application.properties 값 조회 2. message 조회 3. 세션 정보 조회 4. Parameter 정보 조회 5. PathVariable 가져오기 2022. 5. 12.
[JAVA] Reflection 이용해서 필드값 set 하기 상황VO클래스에 있는 필드에 접근하여 그 값이 "" (공백)인지 체크하고, "" (공백)이면 null을 set해주어야 한다.만약 reflection을 사용하지 않고 넘어온 VO를 일일이 확인하고 바꿔주면 코드가 굉장히 중복되게 나열된다.  해결방법public void changeBlankToNull(TestVo testVo){ // null 변경 처리 ('' -> null) Arrays.stream(testVo.class.getDeclaredFields()) .filter(field -> { field.setAccessible(true); Object value = null; try { .. 2022. 4. 11.
[JavaScript] 숫자 3자리(천단위) 마다 콤마 찍는 방법 상황 input text 안에 숫자를 입력할 때 마다 숫자만 입력되도록 처리하고 (replace) 천단위 마다 콤마가 입력되도록 해야 한다. 방법 - onkeyup 이벤트를 이용한다. $(".currency").off("keyup").on("keyup",function() { //콤마(,)찍기 $meetingReg.fnCurrencyFormat( this ); }); fnCurrencyFormat : function(obj) { obj.value = $meetingReg.comma($meetingReg.uncomma(obj.value)); }, comma : function(str) { str = String(str); return str.replace(/(\d)(?=(?:\d{3})+(?!\d))/g,.. 2022. 3. 30.