본문 바로가기

스프링부트18

[Spring Boot] @RequestParam @RequestBody @PathVariable 차이를 알아보자 지난 포스팅에서는 API를 간단하게 호출해서 View형태로 페이지를 응답할지, 아니면 데이터의 형태로 응답할지에 대해서 ㅇ라아보았습니다. 2022.02.18 - [쿤즈 Dev/Spring Boot] - [Spring Boot] 간단한 API 만들어서 테스트 해보기(feat. @Controller vs @RestController) [Spring Boot] 간단한 API 만들어서 테스트 해보기(feat. @Controller vs @RestController) 지난 포스팅에서 스프링 부트 프로젝트를 생성하고 Run 하여 Whitelabel이 나오는 화면까지 확인해 보았습니다. 2022.02.16 - [쿤즈 Dev/Spring Boot] - [Spring Boot] 간단하게 웹 프로젝트 개발 시작하기 [Sp.. 2022. 2. 24.
[Spring Boot] 간단한 API 만들어서 테스트 해보기(feat. @Controller vs @RestController) 지난 포스팅에서 스프링 부트 프로젝트를 생성하고 Run 하여 Whitelabel이 나오는 화면까지 확인해 보았습니다. 2022.02.16 - [쿤즈 Dev/Spring Boot] - [Spring Boot] 간단하게 웹 프로젝트 개발 시작하기 [Spring Boot] 간단하게 웹 프로젝트 개발 시작하기 웹 프로젝트를 만드는 방법이 아주 쉬워졌습니다. 바로 Spring Boot 덕분인 것 같아요. 예전에는 뭐 하나 설정하려면 복잡하고 어려운 부분들이 많았지만 지금은 프레임워크 하나로 모든 세팅이 끝 koonsland.tistory.com 이렇게 해서 만든 프로젝트에서 이제부터 살을 조금씩 붙여 나갈 볼 예정인데요. 이번에는 내가 만든 프로젝트가 정말 화면에 정상적으로 나오는지 확인해 보기 위해서 API를 .. 2022. 2. 18.
[Spring Boot] Tomcat 포트 설정 및 변경 방법 Spring Boot를 이용하여 웹 애플리케이션 개발을 하다 보면 여러 가지 서비스 포트들로 인하여 중복된 포트를 사용할 수 없는 경우가 발생합니다. 특히 마이크로 서비스 아키텍처 (MSA)를 공부하거나 사용해야 한다면 포트 설정 방법이 필요합니다. 이번 포스팅에서는 간단하게 Tomcat의 포트 설정 방법을 알아보도록 하겠습니다. Spring Boot 웹 어플리케이션 서비스 기본 포트 Spring Boot를 이용해서 Spring Initializr 또는 IntelliJ와 같은 툴을 이용해서 스프링 부트 웹 프로젝트를 생성하였다면 기본적으로 Tomcat이 내장됩니다. 내장되지 않았다고 해도 보통 Tomcat을 많이 사용하죠. 이때 톰캣의 기본 포트는 8080입니다. 따로 설정해 주지 않아도 기본적으로 사용.. 2022. 2. 17.
[Spring Boot] 간단하게 웹 프로젝트 개발 시작하기 웹 프로젝트를 만드는 방법이 아주 쉬워졌습니다. 바로 Spring Boot 덕분인 것 같아요. 예전에는 뭐 하나 설정하려면 복잡하고 어려운 부분들이 많았지만 지금은 프레임워크 하나로 모든 세팅이 끝나는 것 같습니다. 이번 포스팅에서는 Spring Boot (스프링 부트)를 이용해서 간단하게 웹 프로젝트를 만드는 방법을 알아보도록 할게요. Spring Boot 프로젝트 만드는 방법 스프링 부트 프로젝트를 만드는 방법은 두 가지가 있습니다. Start spring io 사이트에서 다운로드 IntelliJ (상용버전) 에서 프로젝트 생성 IntelliJ는 굉장히 편리한 개발 툴입니다. 만약 이클립스를 사용하다가 한 번 인텔리제이로 넘어오면 다시 돌아가기 힘들 정도로 강력한 툴이에요. 다만 커뮤니티 버전에서는 .. 2022. 2. 16.
[Spring Boot] Maven Package 빌드시 Test Skip 방법 Spring Boot 개발이 완료되면 배포를 하기 위해서 jar 또는 war로 빌드하는 과정을 거치게 됩니다. 빌드 과정에는 여러 가지를 실행하는데요. 이때 properties에 따라서 개발 DB 혹은 운영 DB로 변경될 수 있습니다. 만약 운영 DB에는 개발서버에서 직접 연결하지 못한다면 빌드 과정에 포함된 TEST에서 오류가 발생하는 걸 확인했어요. 이번 포스팅에서는 메이븐(Maven) 빌드 과정중 TEST를 Skip 하는 방법을 알아볼게요. TDD (Test Driven Development) Spring Boot 개발을 공부하거나 실무를 진행하는 과정에서 테스트는 굉장히 중요합니다. 그래서 다양한 케이스별로 테스트 프로그램을 진행합니다. 물론 Spring Boot는 이 테스트마저 쉽게 할 수 있도.. 2022. 2. 12.
[Spring Boot] Mybatis 에서 조건문 사용시 null 과 zero size string 구분 방법 스프링 부트 프로젝트를 만들기 시작하면 DB Query를 많이 작성하게 됩니다. 기본적으로 게시판 형태가 가장 기본인 되는 CRUD이기 때문이죠. 이때 Mybatis를 사용하면 parameter로 넘어온 object가 null 인지 아닌지를 비교해야 할 필요가 있습니다. 이번 포스팅에서는 parameter의 object가 null 혹은 zero size string을 구분하는 방법을 알아보도록 하겠습니다. Mybatis에서 NULL 또는 ""(zero size string) 구분 Mybatis 문법을 이용해서 NULL 또는 "" 스트링을 구분하는 방법은 다음과 같습니다. NULL 구분 ... ""(zero size string) 구분 ... 예를들어서 parameter로 넘어온 Object가 null이 .. 2021. 3. 16.
[Spring Boot] Mybatis 동적쿼리 LIKE 사용 방법 스프링 부트와 같은 거대한 프레임워크를 공부하다 보면 문법에 맞지 않아서 고생(보통 '삽질')을 많이 합니다. 웹 프로그래밍을 할 때, 보통 DB에서 무엇인가를 가져오기 위해 쿼리를 작성합니다. 이때 오류가 가장 많이 나타나는 것 같습니다. 이번 포스팅에서는 Mybatis 사용시 동적 쿼리 중 LIKE를 사용하는 방법에 대해서 알아보도록 하겠습니다. SQL에서 포함되는 글자를 찾아주는 LIKE 관계형 데이터베이스(RDBMS)에서 특정 문자열이 있는지 검색하고 싶을 때 사용하는 문법이 LIKE입니다. LIKE문의 사용법은 아래와 같이 사용합니다. SELECT * FROM table_name WHERE column_name LIKE '%test%'; MySQL 또는 MariaDB의 Query 구문입니다. 조.. 2021. 3. 12.
[Spring Boot] Mybatis 에서 SQL 조건문 사용 방법 스프링부트 프레임워크를 사용하면서 Mybatis를 이용해 DB에 접근해서 데이터를 가져오다보면 여러가지 다양한 조건이 필요합니다. 특히 조건이 다양하고 null 값이 포함될 수 있는경우 where 절에는 and 를 붙여서 길어질 수 있죠. 이때 저의 경우는 문제점이 하나 발생했습니다. 이번 포스팅에서는 스프링 부트 Mybatis 사용시에 발생될 수 있는 where절의 문제점을 해결해 보도록 하겠습니다. Spring Boot Mybais 조건 활용하기 SQL문을 이용해서 Query를 할 경우 다양한 조건이 포함될 수 있습니다. 이때 if ~ else와 동일한 조건문을 만들 수 있습니다. 이렇게 만드는 이유는 다음과 같습니다. SELECT * FROM board WHERE 조건1 and 조건2 and 조건3.. 2021. 3. 8.
[Spring Boot] Lombok 어노테이션 활용하기 스프링 부트(Spring Boot) 프레임워크를 사용하다보면 데이터베이스를 접근해서 가져와 Class에 값을 담게 됩니다. 그래서 이 클래스에는 getter, setter를 포함해서 toString과 같은 메소드들이 포함되어 있습니다. 이러한 변수들은 모두 private으로 접근제한이 걸려있기 때문이죠. 이때 변수가 추가된다고 하면 각각의 변수에 getter와 setter를 만들어 줘야 하고 또 필요에 따라 생성자에 추가되거나 확인하기 위한 toString 메소드에도 추가되어야 합니다. 이럴때 편하게 사용할 수 있는 라이브러리가 바로 롬복(Lombok) 입니다. 그럼 Lombok은 어떠한 기능들을 가지고 있는지 알아보도록 하겠습니다. Lombok 어노테이션 @Getter @Setter Lombok 라이브.. 2021. 3. 2.