Spring Boot 11

org.thymeleaf.exceptions.TemplateInputException 오류 해결

Spring Boot를 사용하고, Tymeleaf를 사용하여 화면을 구성하였습니다. IDE에서 개발 및 실행할 때는 문제없이 동작하던 것이, 서버에 올리니 오류가 발생합니다. (빌드한 jar 파일을 로컬에서 실행해도 동일하게 오류가 발생합니다.) 오류 내용의 일부입니다. org.thymeleaf.exceptions.TemplateInputException: Error resolving template [home], template might not exist or might not be accessible by any of the configured Template Resolvers at org.thymeleaf.engine.TemplateManager.resolveTemplate(TemplateMana..

java -jar 실행 종료 및 시작 스크립트

실행중인 java -jar를 종료하고, *.jar 파일을 실행하는 명령어를 스크립트로 만들어 명령어를 줄여봅니다. 스크립트 생성 전 시작 명령어 nohup java -jar 파일명.jar & 종료 명령어 # PID 알아오기 ps -ef | grep java # 종료 kill -15 [위에서 알아온 PID] kill -9 (kill) 사용보다 kill -15 (terminate)를 사용하는 것이 더 안전하다고 합니다. 그렇게 길지 않은 내용이긴 하지만, 하나의 명령어로 이용하고 싶습니다. 실행 중이라면, 종료 후 시작 스크립트 start.sh #!/bin/bash JAR=site-0.0.1-SNAPSHOT.jar LOG=/root/site.log SITE_PID=$(ps -ef | grep java | g..

NAVER CLOUD, Public IP(공인 IP) 신청 및 Spring Boot 실행 확인 + 도메인 연결

서버를 서비스 목적으로 이용하려면 공인 IP가 필요합니다. (외부에서 접속할 IP 주소, 예를 들어 URL에 http://223.130.200.104/ 로 입력하면, 네이버로 접속됩니다. 이때 공인 IP로 볼 수 있는 것이 223.130.200.104입니다. ) 작업할 내용 Public IP(공인 IP) 신청 ACG 설정 SFTP로 jar 파일 업로드 (FileZilla) JAVA(JDK) 설치 java -jar 파일명.jar 명령어로 Spring Boot 프로젝트 실행 Public IP(공인 IP) 신청 Spring Boot 배포 후, 동작 확인을 위해 공인 IP를 먼저 신청합니다. 유료 서비스 1년 무료 서버를 이용하더라도, 공인 IP 신청의 경우 월별 금액이 청구됩니다. 2023.01.30 기준, ..

Spring Boot - Security 사용하기 (인메모리)

아래 소스들은 이전 포스팅 중 Spring Boot + MyBatis 프로젝트 연습의 MyBatis - Join 매핑하기 소스 기준으로 추가된 내용입니다. 참고하세요. 이번 포스팅에서는 Spring 공식 가이드 내용 기준으로 Security를 설정해보기로 했습니다. 실제 개발 시에는 인메모리로 사용하지 않겠지만 DB로 접근하여 로그인하는 부분은 차후 진행하기로 하고 우선은 인메모리를 사용하는 Spring 공식 가이드를 따라 해 보았습니다. Spring Boot - Security 사용 및 인메모리 설정 1. pom.xml에 추가 ... org.springframework.boot spring-boot-starter-security ... 2. Spring Security가 classpath에 있는 경우 ..

MyBatis - Join 매핑하기

Spring Boot + MyBatis 프로젝트 연습 목록 - 01. 신규 Spring Boot 프로젝트 만들기 - 02. Thymeleaf, spring-boot-devtools 추가 - 03. Spring Boot에 H2 추가 - 04. Spring Boot + H2 + Jdbc로 사용해보기 - 05. Spring Boot + H2 + MyBatis로 사용해보기 - 06. MyBatis Logging 추가 - 07. MyBatis - Join 매핑하기 (현재 포스트) 거의 대부분의 개발 시, 각 테이블들 간에는 여러 관계들로 엮여있습니다. 그에 따라 join으로 select를 할 때 어떻게 데이터를 매핑하여 가져오는지 해보기로 했습니다. 예전에 잠시 사용할 때에는 join 해서 가져올 데이터에 대해 ..

MyBatis Logging 추가

Spring Boot + MyBatis 프로젝트 연습 목록 - 01. 신규 Spring Boot 프로젝트 만들기 - 02. Thymeleaf, spring-boot-devtools 추가 - 03. Spring Boot에 H2 추가 - 04. Spring Boot + H2 + Jdbc로 사용해보기 - 05. Spring Boot + H2 + MyBatis로 사용해보기 - 06. MyBatis Logging 추가 (현재 포스트) MyBatis를 사용할 때, 어떤 쿼리가 실행되고 어떤 파라미터가 전달되었는지 또한 어떤 결과가 나왔는지를 확인할 수 있도록 logging을 설정하는 방법을 알아보도록 하겠습니다. 라이브러리 추가 없이 기본 기능으로 표시해주는 방법과 라이브러리를 추가하여 쿼리와 결과를 더 보기 좋게..

Spring Boot + H2 + MyBatis로 사용해보기

Spring Boot + MyBatis 프로젝트 연습 목록 - 01. 신규 Spring Boot 프로젝트 만들기 - 02. Thymeleaf, spring-boot-devtools 추가 - 03. Spring Boot에 H2 추가 - 04. Spring Boot + H2 + Jdbc로 사용해보기 - 05. Spring Boot + H2 + MyBatis로 사용해보기 (현재 포스트) 드디어 MyBatis를 추가하여 사용하는 부분입니다. 시작하기 전 도메인 객체 추가 및 리팩토링 1. 도메인 객체를 하나 이상 두고 MyBatis를 테스트해보고 싶었기에 Diary 도메인 객체를 추가하였다. Diary 관련 소스는 포스팅에는 남기지 않고 아래에 공유드린 github에서 확인이 가능하다. src/main/java..

Spring Boot + H2 + Jdbc로 사용해보기

Spring Boot + MyBatis 프로젝트 연습 목록 - 01. 신규 Spring Boot 프로젝트 만들기 - 02. Thymeleaf, spring-boot-devtools 추가 - 03. Spring Boot에 H2 추가 - 04. Spring Boot + H2 + Jdbc로 사용해보기 (현재 포스트) 현재 포스팅하는 시리즈는 Spring Boot와 MyBatis를 결합한 프로젝트를 연습하는 부분입니다. 하지만 이번 포스팅은 MyBatis를 설정하기 전에 먼저 Jdbc로 사용하는 방법을 확인하고 싶어 진행한 곁가지입니다. 01~03번 포스팅까지는 동일하게 진행되고 사용함에 있어 04.Jdbc / 05.MyBatis(이후 정리 예정) 이렇게 나뉘어집니다. JDBC 사용하기 1. pom.xml에 아..

Spring Boot에 H2 추가

Spring Boot + MyBatis 프로젝트 연습 목록 - 01. 신규 Spring Boot 프로젝트 만들기 - 02. Thymeleaf, spring-boot-devtools 추가 - 03. Spring Boot에 H2 추가 (현재 포스트) 이번 포스팅에서는 앞서 만든 프로젝트에 H2 Database 설정을 추가합니다. 연습 프로젝트이므로 MySQl과 같은 DBMS를 사용하지 않고 간단한 테스트용으로 내장 Database로 H2를 선택하였습니다. H2 의존성 추가 1. pom.xml에 아래 내용 추가 ... 기존 내용 생략 ... com.h2database h2 runtime 참고 : 프로젝트 생성 시에 의존성 선택 화면에서 H2 Database 선택하면 자동으로 추가된다. 2. 브라우저에서 H2 ..

Thymeleaf, spring-boot-devtools 추가

Spring Boot + MyBatis 프로젝트 연습 목록 - 01. 신규 Spring Boot 프로젝트 만들기 - 02. Thymeleaf, spring-boot-devtools 추가 (현재 포스트) 앞서 '신규 Spring Boot 프로젝트 만들기'로 프로젝트를 생성하였습니다. 이번 포스팅에서는 뷰를 위한 템플릿 엔진인 Thymeleaf와 개발상의 번거로움을 줄여주는 spring-boot-devtools을 추가하기로 합니다. Thymeleaf 추가 뷰를 위한 템플릿 엔진 Thymeleaf (Thymeleaf is a modern server-side Java template engine for both web and standalone environments.) 1. pom.xml 에 아래 내용 추가..