로그4 [JS] JSP에서 템플릿 리터럴, 백틱(`) 사용하기 jsp페이지에서 이렇게 너무나도 편한 템플릿 리터럴을 쓰고 싶었는데,계속 빈 값만 나와서 결국 일반 문자열로 사용하다가 이번에 원인을 알았다. 템플릿 리터럴?ES6부터 자바스크립트에서 백틱(`)을 이용한 새로운 문자열 표기법이 도입되었다.멀티라인 문자열일반 문자열 내에서는 줄바꿈(개행)이 허용되지 않는데, 템플릿 리터럴을 이용한 경우는 가능하다.const str = 'Helloworld'; // SyntaxError 발생일반 문자열에서 줄바꿈 등의 공백을 표현하려면 백슬래시()로 시작하는 이스케이프 시퀀스를 사용해야 한다.const str = 'Hello\nworld'; const multiLineStr = `Helloworld`;표현식 삽입문자열은 문자열 연산자 +를 사용해 연결할 수 있다.+연산자는 .. 2024. 7. 16. The package org.xml.sax is accessible from more than one module 에러 해결하기 기존에 있던 프로젝트는 java8 버전이다. 이 프로젝트 소스를 복사하여 메이븐으로 바꾸고 자바를 21로 변경해서 새로운 프로젝트를 만드려고 하는데 계속 에러가 났다🥲 The package org.xml.sax is accessible from more than one module: , java.xml 검색해보니 보통 java 프로젝트에서 동일한 패키지가 여러 모듈에서 접근 가능할 때 발생한다고 한다. Java 9 이상에서 모듈 시스템이 도입되면서 생긴 문제로, 두 개 이상의 모듈이 동일한 패키지를 포함하고 있을 때 발생한다는데.. 그럼 종속성을 뭔가 중복으로 세팅해서 생긴 문제점인가? 싶어서 pom.xml을 열심히 뒤져봤는데, org.xml.sax는 없었다. 소스 가서 org.xml.sax 상위 패키지.. 2024. 6. 30. 엑셀 다운로드(Jquery 부분) 요구사항에 엑셀다운로드 기능을 넣어달라는 의견이 있었다. 프로젝트 내부에 엑셀 생성 로직이 있어서 기존 소스를 활용하려고 하는데, 파일다운로드창(?) 계속 보이질 않았다. 에러도 안떠서 한참을 헤맸다. 결론은, 백엔드에서는 파일은 잘만 만들었고, 클라이언트에서 만든 파일을 받지 못하는 문제였다.엑셀 다운로드 기본원리?엑셀다운로드의 기본원리는 간단하다.1. 클라이언트(브라우저)에서 jQuery ajax 요청을 보낸다.2. 서버(Spring Controller)에서 해당 요청을 받아 데이터를 처리하고, 엑셀 파일을 생성한다.3. 생성된 엑셀 파일을 클라이언트로 전송하여 다운로드한다.이 세가지중에 내가 겪은 문제는 ajax응답을 어떻게 받을 것인지 헤더 설정하는 부분이 잘못됬기 때문이었다. 내가 파일다운로드.. 2024. 6. 4. [GCP] Google Source Repository에서 클론하기 현재 진행중인 프로젝트가 GCP(Google Cloud Platform)을 기반으로 한 프로젝트다.클라우드는 아에 처음이었어서 많이 해맸었다. 작업 인원이 변경됨에 따라 소스 리포지토리 연동을 도와드렸다. 클론하는 방법을 헤메서 나중을 위해 정리해본다. 테스트를 위해 무로 크레딧으로 진행했다. (90일간 체험할 수 있다.)우선 먼저 Git을 설치한다. (설치 과정은 생략한다.) (회사의 OS환경은 윈도우이지만, 테스트 환경은 Mac이다.) Git이 잘 설치되었는지 터미널에서 확인한다.git --version??언제 설치했는지 모르겠는데 이미 설치 되어 있었다. 구글 소스 리포지토리 사이트로 이동해서 클론 버튼을 눌러준다. 클론 시 인증이 필요하다. 인증 방법은 3가지가 있다.1. SSH 인증2. Goo.. 2024. 3. 21. 이전 1 다음