
SpringBoot 프로젝트를 war 파일로 만들어 리눅스서버에 Tomcat 을 이용해 배포하는 방법에 대해 간략하게 알아보겠습니다. IntelliJ + gradle 기준으로 작성되었습니다.1. build.gradleplugins { id 'java' id 'org.springframework.boot' version '2.6.15' id 'io.spring.dependency-management' version '1.0.11.RELEASE' id 'war'}apply plugin: 'war'bootWar { archiveBaseName = '-' archiveFileName = 'MyApp.war' archiveVersion = "1.0.0"}group = 'com..
쿠키는 1개의 key 당 4kb의 데이터만 담을 수 있기 때문에 주의해서 사용해야 합니다. 이전 포스팅 하였던 세션관리와 비슷하기 때문에 해당 포스팅도 참고하세요.[SpringBoot] Enum 으로 Session 관리하기 [SpringBoot] Enum 으로 Session 관리하기SpringBoot에서 Enum을 활용하여 Session 관리하는 방법을 간단하게 알아보겠습니다.1. SessionKeys 생성@RequiredArgsConstructorpublic enum SessionKeys { // key 를 나열 USER_VO("사용자 정보", UserVO.class), ROOM_VO("채팅방zerobin-dev.tistory.com 1. Key 정의CookieKeys Enum 클래스 생성@Requir..

SpringBoot에서 간단하게 에러관리 하는 방법에 대해 알아보겠습니다.1. 예외 Type 생성import com.fasterxml.jackson.annotation.JsonFormat;import lombok.Getter;import lombok.RequiredArgsConstructor;import org.springframework.http.HttpStatus;@Getter@RequiredArgsConstructor@JsonFormat(shape = JsonFormat.Shape.OBJECT) // ENUM 클래스 한글사용public enum ExceptType { /******************/ /** API Exception */ /******************/ RUNTIME..
SpringBoot에서 1개의 Datasource 만 사용할 경우 application.yml 파일에 datasource 만 작성하면 Spring 이 알아서 맵핑을 해주지만 2개 이상의 Datasource는 맵핑에 어려움이 있습니다. 따라서 다중 맵핑에는 Config 파일을 추가로 작성하여야 합니다. 아래는 Config 파일을 작성하는 방법입니다.1. application.ymlserver: port: 1221 servlet: encoding: charset: UTF-8mybatis: config-location: classpath:config/mybatis-config.xmlspring: config: activate: on-profile: "local" datas..

SpringBoot에서 MockMvc를 이용하여 Test 코드를 작성하는 방법에 대해 간략하게 알아보겠습니다.1. 라이브러리 추가testImplementation 'org.springframework.boot:spring-boot-starter-test'testImplementation 이 작성되어 있는지 확인합니다. 2. Test 클래스 생성test 경로 밑에 원하는 패키지와 클래스를 생성합니다. 3. 어노테이션 작성@SpringBootTest(classes = MymsgApiApplication.class)@AutoConfigureMockMvc@ActiveProfiles("local") @SpringBootTest : 스프링부트 통합 테스트라는 것을 나타내며 classes 속성에 @SpringBoot..
SpringBoot 프로젝트에서 인터셉터를 통해 간단하게 LoginCheck 어노테이션을 만드는 방법에 대해 알아보겠습니다. 1. 인터페이스생성import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;import java.lang.annotation.Target;/** * 로그인 체크 */@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.METHOD)public @interface LoginCheck { boolean required() default false; // 로그인 체크 필수 여부}@R..

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..
이번 포스팅은 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..
- Total
- Today
- Yesterday