Spring 10

[ Springboot ] Swagger 설정 및 접속 ( + Swagger Spring Security 설정 )

Springboot 환경에 Swagger를 설정하고 접속까지 해보겠습니다. 프로젝트 환경 : Java 17 , SpringBoot 3.1.2 , ( spring security 적용되어 있음.) Build.gradle 스웨거 의존성을 추가해 줍니다. // Swagger implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.0.2' SwaggerConfig swagger 를 사용하기 위해 설정 파일을 만들어 주겠습니다. @OpenAPIDefinition( info = @Info(title = "sns", description = "sns api - personal project", version = "v1") ) @RequiredArgsC..

Spring 2023.10.17

[ SpringBoot - JUnit 5 ] Dev , Test DB 분리 ( feat. h2 )

Test 코드를 작성 할 때 DB 환경을 분리해 왔습니다. 하지만 초기 설정 때 마다 기억이 잘 나지않아 이번에 Dev 와 Test 를 분리하는 방법을 기록하려 합니다. 이 프로젝트는 gradle 환경이며 yaml 파일을 사용 중입니다. 이번 게시글의 목표는 Dev - Sqlite , Test - h2 를 사용해 실행 확인을 마치는 것입니다. ++ h2 사용하며 발생했던 문제 application.yaml 먼저 Dev 환경의 DB 설정입니다. 개인 프로젝트이기 때문에 sqlite 를 사용 하고 있습니다. spring: datasource: url: jdbc:sqlite:db.sqlite driver-class-name: org.sqlite.JDBC jpa: hibernate: ddl-auto: creat..

Spring 2023.10.09

[Spring] 필드 에러 메세지 표출하기 ( + Thymeleaf)

에러 메세지를 웹에 표출하기 위한 여러방법 (properties 이용하기 등등) 이 존재한다. 그 중 가장 간편하게(내 기준) 메세지를 띄우는 방법인 Entity 클래스의 검증 어노테이션을 이용하는 방법을 살펴보자아 결과 Gradle 라이브러리 추가하기 implementation 'org.springframework.boot:spring-boot-starter-validation' spring-boot-starter-validation을 추가하면 여러 검증 어노테이션을 사용할 수 있게된다. @NotBlank : 공백 또는 빈값만 있는 경우 허용하지 않음 @NotNull : null 허용 하지 않음 @Range(min = num1, max = num2) : num1 ~ num2 안의 값이여야함 @Max( ..

Spring 2023.06.18

[ Spring ] application.properties에 DB 정보 추가하기

1. build.gradle파일에 이동해 dependencies 추가해주기 //mysql runtimeOnly 'com.mysql:mysql-connector-j'//추가 2. application.properties 파일에 아래와 같이 설정 추가해주기. #1 spring.datasource.url=jdbc:mysql://localhost:3306/diary?characterEncoding=UTF-8&serverTimezone=UTC #2 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver #3 spring.datasource.username=root #4 spring.datasource.password=123 #1. 연결 정보를 적어줌. jdbc..

Spring 2023.05.24

[Thymeleaf] 타임리프 문법

타임리프란? HTML을 동적으로 렌더링하기 위해 서버에서 사용하는 뷰 템플릿. URL 표현 방법 1. th:href= " @ { [static 기준 적용 경로] }" 방법 2. th:href= " @ { | [static 기준 적용 경로] / ${ member.name } | }" 방법 3. th:href= " @{ [static 기준 적용 경로] / { member } ( member = ${member.name} ) }" 쿼리 th:href=" @{ [static 기준 적용 경로] / { member } ( member=${member.name}, query=' walwal ' ) }" [참고] 반응에 따른 경로 이동 th:onclick="| location.href= '@{ [ templates 기..

Spring 2023.04.16

[Spring] Port 8080 was already in use , Port 에러 해결하기 2

안녕하세요! 2023.01.18 - [Java] - [Spring] Port 8080 was already in use , Port 에러 해결하기 에 이어 새로운 방법을 살펴보겠습니다. spring 의 application.properties 파일 설정을 바꿔주는 방법인데요 , src/main/resources 아래에 있는 application.properties 파일에서 server.port=[원하는 포트번호] 로 설정을 추가해줍니다. 위와 같이 설정을 완료했다면 localhost:9090 으로 잘 접속되는것을 확인할 수 있습니당! 추가로 포트번호 8080 과 비슷한 숫자(?)를 웹 전용 포트로 사용해 왔다고 해요. 공부하다 보니 재미있는 사실들을 많이 알게 되는것 같습니다. 하..하.

Spring 2023.03.27

[Spring] spring Project Import (feat. Eclipse , spring boot , gradle)

안녕하세요 ! 이번엔 intelliJ 가 아닌 Eclipse 를 이용해 spring 프로젝트를 생성해 보도록 하겠습니다. 1. spring Initializr 를 이용해 프로젝트의 버전 등 설정하고 generate 를 누릅니다. 참고로 저는 Gradle을 선택했습니다! HTML 삽입 미리보기할 수 없는 소스 ++ spring Initializr 주소 → https://start.spring.io/ 다운 받은 파일의 압축을 풀어줍니다. 저는 C:\Spring 에 압축을 풀었습니당 2. 이클립스로 돌아와 프로젝트를 Import 해주세요. Import 첫번째 방법 ([project Explorer →] Import projects) ↓ ↓ ↓ 또는 Import 두번째 방법 (file → import) ↓ ↓ ..

Spring 2023.02.23

[Spring] Port 8080 was already in use , Port 에러 해결하기 1

Web server failed to start . Port 8080 was already in use. Spring을 사용하면서 가장 자주 등장하는 에러인것 같습니다.. 8080 포트가 이미 사용중이라 실행하려는 웹 서버를 시작할수 없다는데요, 해결하는 방법을 알아볼까요? 많은 방법중에 제가 가장 많이 사용하는 해결법 두가지를 적어보려 합니다. 첫번째 방법! 에러발생시 콘솔창에서 우클릭을 한 후 Terminate/Disconnect All 을 해줍니다. 그리고 웹 서버를 재 시작 해주세요. 참고로 저는 이클립스환경에서 진행하였습니다. vscode , intelliJ 환경이라 비슷한 기능을 찾지 못했거나 Terminate/Disconnect All 했으나 에러가 사라지지 않는다면 가장 확실한 두번째 방법..

Spring 2023.01.18

[Spring] application.properties encoding , 한글 설정하기 (intelliJ , window , utf )

intelliJ를 재시작하고 application.properties 파일을 확인했더니 갑자기 한글 주석이.. ? ?? ????????????!!! 이게모죠.. 하고 당황했던 기억이 있으신가요? 바로접니다. ㅎㅎ 정리하며 까먹지 않기위해 포스팅을 해보겠습니당. 먼저 file -> Settings 로 이동합니다. (단축키 Ctrl + Alt + S ) (저는 window 를 사용합니다.) 그 후 검색창에 file encodings를 검색하거나 Editor -> File Encodings 로 이동해 아래 사진과같이 설정을 바꾸고 ok 를 해주면 됩니다. 쉽쥬? (그러니 기억해..나 자신..) 이제 모두들 안심하고 재시작하세요 ;3

Spring 2022.12.28

[Spring Boot] spring Project 생성하기 (feat. IntelliJ , spring initializr)

intelliJ에서 Spring Project 생성하는 방법에 대해 알아보도록 하겠습니다. Project를 생성하는 방법과 여러 순서가 있지만 저는 다음과 같이 진행할 예정입니다. Empty Project 생성 -> spring initializr 설정 및 다운 -> build.gradle 1. Empty Project 생성 (과정 생략 가능) 제일 처음 IntelliJ를 실행시켰다면 아래와 같이 Projects -> New Project를 선택합니다. 조금이라도 사용해보신 분이라면 다음 사진으로 이동하시면 됩니다! Empty Project를 생성하겠습니당. 따로 변경할 것 없이 Create 해줍니다. 그럼 이렇게 untitled project가 생성됐습니다. 참 쉽죠? ㅎㅎ 2. spring initi..

Spring 2022.12.20