본문 바로가기

dev

(261)
String split 특수문자 자바에서 문자열을 특정 문자 기준으로 나눌 때 split api를 사용하는데 특수문자를 기준으로 할 때 주의해야 할 점이 있습니다. 특수문자 앞에 "\\"를 붙이지 않으면 정규표현식 메타 문자로 인식해서 split이 제대로 되지 않습니다. 그래서 특수문자 기준으로 split를 쓰려면 아래와 같이 써야합니다. 위 예제는 "|" 기준으로 split을 하려고 하고 앞에 "\\"을 붙였습니다. 그리고 결과는 다음과 같습니다. 특수문자 기준으로 split을 할 때 꼭 "\\" 붙이는 거 잊지 않으면 좋겠습니다.
cvc-id.3: A field of identity constraint 'web-app-filter-name-uniqueness' matched element 'web-app', but this element does not have a simple type. 에러 수정 프로젝트 세팅하다가 web.xml에서 다음과 같은 에러가 발생했습니다. 구글링해봤는데 이클립스에서 xml의 namespace 정보를 못 불러와서 생긴 에러인거 같아서 java.sun.com의 주소를 Java.sun.com으로 변경했더니 에러가 사라졌습니다. web.xml을 위와 같이 수정했더니 에러가 사라졌습니다. 간단한 버그여서 쉽게 해결했습니다😊
centos pinpoint docker 설치 centos에 pinpoint를 도커로 설치하는 방법을 포스팅하겠습니다. git 명령어로 pinpoint 설치 파일을 다운받습니다. pinpoint-docker 디렉토리가 보이면 설치 파일을 다운받은 것을 확인할 수 있습니다. 그러나 /root 디렉토리 밑에 설치 파일이 있기 때문에 /home 디렉토리로 옮겼습니다. /home 디렉토리로 옮긴 pinpoint 설치 파일을 확인하고 pinpoint-docker 디렉토리 안으로 들어가서 설치를 진행합니다. "docker-compose pull && docker-compose up -d" 명령어를 통해서 pinpoint를 설치합니다. 설치가 정상적으로 끝났는지 확인하기 위해 "docker ps"로 확인합니다. pinpoint 관련 컨테이너 보이면 정상적으로 설..
centos docker-compose 설치 centos에 docker-compose 설치하는 방법을 포스팅하겠습니다. curl 명령어로 docker-compose 설치해야 하는데 리눅스 일반 계정으로 설치하는 거라면 sudo 권한으로 설치해야 합니다. (sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose) 설치가 됐다고 해서 완전히 끝난 것이 아닙니다. docker-compose에 실행 권한을 줘야 합니다. 설치된 위치(/usr/local/bin)으로 이동해서 docker-compose에 실행 권한 추가합니다. 이제 docker-compos..
centos git 설치 centos에 git 설치하는 방법을 포스팅하겠습니다. 먼저 리눅스에 git이 설치되어 있는지 확인합니다. 위와 같이 "명령을 찾을 수 없습니다..." 라는 메시지가 보이면 설치가 되지 않은 것입니다. yum 패키지로 git을 설치하겠습니다. "yum install git" 명령어를 통해서 git을 설치하고 중간에 동의 여부를 물어보는데 "y" 를 입력하면 설치가 완료됩니다. "Complete!" 라는 메시지가 보이면 설치가 완료된 것입니다. 그리고 설치가 제대로 되었는지 확인하기 위해 git 명령어를 실행합니다. 위와 같은 화면이 보이면 git이 정상적으로 설치된 것입니다.
Http 요청 한글 파라미터 인코딩 클라이언트가 서버에 Http 요청할 때 URL에 한글이 포함되는 경우 브라우저에 따라 아래와 같은 에러가 발생할 수 있습니다. 위와 같은 에러가 발생하는 이유는 브라우저 별로 한글 인코딩하는 방식이 다르기 때문입니다. (익스플로어에서 발생하는 문제... 이제 익스플로어 놓아줬으면 좋겠습니다...) 이런 문제를 해결하기 위해서는 클라이언트(브라우저)와 서버(톰캣)에서 작업을 각각 해줘야 합니다. 먼저 클라이언트에서 encodeURI 함수를 사용해서 한글을 인코딩하고 서버에서는 URLDecoder클래스의 decode 함수를 사용해서 한글을 디코딩하면 됩니다. 회사 소스라 캡처할 수 없는 점 죄송합니다😂 대신 간단하게 예로 보여드리겠습니다. 먼저 클라이언트에서 파라미터(한글 텍스트)를 인코딩하여 서버에 전달합..
비밀번호 안전도 회원가입 페이지 개발하다 보면 비밀번호 안전도가 필요한 경우가 있습니다. 비밀번호에 대소문자, 숫자, 특수문자가 포함되어있는지 체크하는 기능입니다. 자바스크립트 정규표현식으로 비밀번호 안전도를 체크하겠습니다. 소스를 보게 되면 1번재 라인에 비밀번호 안전도 체크하는 checkPassword라는 함수를 만들었고 "password"라는 파라미터를 받고 있습니다. 2번째 라인에 결과값을 선언했습니다. 4번째 라인부터 11번째 라인까지 비밀번호 길이를 체크하는 구간이고 비밀번호 길이가 0이거나 9자 미만 20자 초과인 경우 함수를 종료하고 있습니다. 13번째 라인부터 17번째 라인은 비밀번호 조건(정규표현식)을 배열에 추가했습니다. (영문 대문자, 영문 소문자, 숫자, 특수문자) 19번째 라인부터 25번째 라인..
Java File Separator 자바 개발을 하다 보면 OS마다 파일 디렉토리(폴더) 구분자가 달라서 곤혹스러울 때가 있습니다. 예를 들면 윈도우는 "\\"이고, 리눅스는 "/"이어서 특정 파일을 읽거나 써야 하는 경우 디렉토리 구분자를 각각 따로 줘야 하는 불편함이 있습니다. 이럴 때 File.separator를 사용하면 쉽게 해결할 수 있습니다. 위 예제는 윈도우 C 드라이브 밑에 test 디렉토리 밑에 있는 test.txt 파일의 수정 날짜를 조회하는 소스입니다. 그리고 실제 해당 위치에 test.txt 파일이 있습니다. 코드를 실행하면 아래와 같이 정상적으로 파일 수정 날짜가 출력됩니다. 이처럼 File.separator를 사용하면 OS에 상관없이 파일 디렉토리 구분자를 쉽게 쓸 수 있습니다.