SpringBoot 프로젝트를 리눅스 서버에 배포하는 방법에 대해 알아보겠습니다.1. jar 파일 생성Gradle > Tasks > build > bootJar 를 클릭하여 실행가능한 jar 파일을 만듭니다.완료되면 프로젝트경로 > build > libs 폴더 아래에 jar 파일이 생성이 됩니다.2. jar 파일 업로드FileZila 와 같은 FTP 툴을 이용하여, jar 파일을 리눅스 서버에 업로드합니다.3. 실행SSH 로 리눅스 서버 터미널에 접근하여 jar 파일의 경로로 이동 후 실행합니다.# 이동cd /home/mypath# 실행java -jar ROOT.jar# 특정 java version 사용/home/jdk/etc/jdk-17.0.10/bin/java -jar ROOT.jar# 백그라운드 실..
Spring 에서 DB 에 접근할 때, "지원되지 않는 문자 집합(클래스 경로에 orai18n.jar 추가): KO16MSWIN949" 와 같은 오류가 발생하곤 합니다.해당 오류는 DB에 설정된 인코딩 방식이 JDBC 에서 지원하지 않는 인코딩 방식일 때 발생합니다. 해결방법은 오류 메세지에서 보이듯 orai18n.jar 파일을 추가하면 됩니다.implementation 'com.oracle.database.nls:orai18n:21.9.0.0' 버전은 Maven Repository 사이트에서 확인 후 작성하시면 됩니다.감사합니다.
오늘은 Spring Boot 에서 Logback 사용법에 대해 간략히 소개하겠습니다.1. Logback 이란?Logback 이란 SLF4J 의 구현체로, 스프링 부트의 기본으로 설정되어 있어 별도의 라이브러리를 추가할 필요 없습니다. 아래 패키지에 포함되어 있어 기본적으로 사용이 가능합니다.implementation 'org.springframework.boot:spring-boot-starter'2. Logback 설정파일application.yml 파일에 직접적으로 경로를 지정하지 않았다면 resources 디렉토리에 logback-spring.xml 파일을 참조하게 됩니다. 추가 --> ${CONSOLE_LOG_PATTERN} ${spring.l..
오늘은 Gitlab에서 Access Token 발급받는 방법에 대해 알아보겠습니다.1. Edit profileGitlab 에 로그인 후 왼쪽 상단, 본인 아이콘 > Edit profile를 클릭합니다.2. Add new token왼쪽 네비게이션바에 "Access Tokens"를 클릭 > "Add new token" 버튼을 클릭합니다.3. Create personal access token토큰이름과 만료일자를 선택하고 "Create personal access token" 버튼을 클릭합니다.만료일은 최대 1년 입니다.4. 토큰생성완료토큰을 복사하여 인증에 사용할 수 있게 됩니다. 감사합니다.
소스트리는 Git GUI 대표 프로그램중 하나입니다. 필요한 명령을 커맨드가 아닌 버튼 클릭 이벤트로 Git을 사용할 수 있기 때문에 굉장히 편리합니다. 오늘은 소스트리의 설치와 간단한 사용방법에 대해 포스팅하고자 합니다.1. 소스트리 다운로드https://www.sourcetreeapp.com/ 사이트에 접속하여 다운로드 받습니다.2. 비트버킷 로그인 생략3. Git 설치Git 을 설치하지 않았다면 Git 에 체크박스를 활성화 하고, 머큐리얼은 사용하지 않기 때문에 체크박스를 비활성화 합니다. 고급옵션 -> "기본적으로 줄 끝을 자동으로 처리하도록 설정(권장)" 을 체크하고 "다음" 버튼을 클릭합니다.4. 전역사용자 설정Git 에서 사용할 전역사용자를 설정하고 "다음" 버튼을 클릭합니다.Author N..
간단하게 IntelliJ Ultimate 에서 SpringBoot + Kotlin + Thymeleaf 프로젝트 생성하는 방법에 대해 알아보겠습니다.1. 프로젝트 생성IntelliJ 를 실행하고 File -> New Project 를 클릭합니다.Spring 이니셜라이저를 이용하여 코틀린을 선택합니다. 참고로 JDK 버전은 주로 LTS(Long Term Support) 버전인 8, 11, 17 버전을 사용하는데, SpringBoot3 에선 17버전이 최소버전이므로 jdk 17 을 선택합니다. 2. Dependency 추가Next 버튼을 눌러 필요한 Dependency 를 추가합니다.필요한 라이브러리들을 꼭 이 창에서 설정할 필요는 없으니, 사용할만한 Dependency 만 추가하고 Create 버튼을 클릭..
간단하게 Nginx로 특정 URL 별로 Upstream 처리하는 방법에 대해 작성해 보겠습니다.1. 경로이동리눅스 서버에 nginx를 설치하였다면, 아마 아래 경로에 nginx.conf 파일이 있을 겁니다.cd /etc/nginx1.1. 경로 못찾음만약 nginx.conf 파일의 경로를 못 찾겠다면, 아래 명령어를 이용하여 찾아볼 수 있습니다.find /etc/ -type f -name "nginx.conf"2. nginx.conf 편집편집기를 열어 nginx.conf를 수정합니다.vi nginx.conf2.1. location 설정location 경로를 설정하고 proxy pass 할 upstream 서버를 지정해 줍니다.user root;#process수 자동증가worker_processes auto..
이번 포스팅은 Spring에서 Redis 연동하는 방법입니다. SpringBoot 3.1.5 기준으로 작성되었습니다.1. 라이브러리 추가build.gradle redis 추가implementation 'org.springframework.boot:spring-boot-starter-data-redis:3.1.5'2. 설정값 작성application.yml redis 설정값 추가spring: config: activate: on-profile: "local" data: redis: port: 6379 host: 127.0.0.1 password: admin3. RedisConfig 작성import org.springframework.beans.factory..
TextWebSocketHandler를 이용하여 웹소켓을 구현하였다면 구현체 내부에선 직접적으로 HttpSession 접근이 불가능하다. 이를 해결하기 위해선 HttpSession 핸드쉐이킹 과정이 필요하다.1. HttpSessionInterceptor 구현import org.springframework.http.server.ServerHttpRequest;import org.springframework.http.server.ServerHttpResponse;import org.springframework.http.server.ServletServerHttpRequest;import org.springframework.stereotype.Component;import org.springframework...
이번 포스팅에선 타임리프에서 변수를 표시하는 다양한 방법에 대해 작성하고자 합니다. 타임리프는 Natural 템플릿이기 때문에 HTML 흐름에 자연스럽게 값을 맵핑할 수 있습니다.1. th:text${}를 이용하여 값을 맵핑할 수 있습니다. 2. HTML 태그 내부에서 사용[[${}]] 를 이용하여 HTML 태그 내부에서 값을 맵핑할 수 있습니다.[[${room.roomName}]] 3. Javascript 내부에서 사용javascript 에서 변수로 받아 동적으로 처리할 수 있습니다. 4. img src 및 onclick 작성방법 감사합니다.
- Total
- Today
- Yesterday