Backend Develop(11)
-
Spring vs Spring Boot
Spring Framework는 기능이 많은만큼 설정이 복잡하다. Spring Framework의 어려운 부분을 자동화 하여 사용자가 편하게 사용할 수 있는 프레임워크가 Spring Boot이다. 1. Spring POJO(Plain Old Java Object) 기반의 개발을 쉽고 편하게 할 수 있도록 한다. - 자바 개발에 필요한 구조를 포괄적으로 제공한다 - Spring이 구조를 알아서 처리해서 개발자는 개발에만 집중할 수 있다. - 동적인 웹 사이트를 개발하기 위한 여러 가지 서비스를 제공한다. 2. Spring Boot Spring Boot는 빠르고 간편하게 개발할 수 있도록 해준다. - 애플리케이션을 고수준에서 모니터링하고 추적 할 수 있도록 해준다. - 서버가 애플리케이션에 통합되기 때문에 ..
2023.02.09 -
Spring Framework란?
스프링 프레임워크란 자바 개발을 위한 오픈소스 프레임워크다. 우리나라의 전자정부 표준 프레임워크 또한 스프링을 사용하였다. 스프링 프레임워크는 개발자들이 애플리케이션 구현을 더 쉽게 할 수 있도록 다양한 기능을 제공한다. 스프링은 다른 프레임워크에 비해 다음과 같은 특징을 가진다. 경량 컨테이너로서 자바 객체를 직접 관리한다. 각각의 객체 생성, 소멸과 같은 라이프 사이클을 관리하며 스프링으로부터 필요한 객체를 얻어올 수 있다. 스프링은 Plain Old Java Object 방식의 프레임워크이다. 일반적인 J2EE 프레임워크에 비해 구현을 위해 특정한 인터페이스를 구현하거나 상속을 받을 필요가 없어 기존에 존재하는 라이브러리 등을 지원하기에 용이하고 객체가 가볍다. 스프링은 제어 반전(IoC : Inv..
2023.02.09 -
[InteliJ + Spring Boot + Gradle] Rest API Server 구축하기(4) - mapper를 활용한 DB 연동
개발환경 IDE : InteliJ Spring Boot : 2.6.2 JDK : 17 1. MariaDB 생성 윈도우에 mariadb를 설치 한뒤 다음과 같은 테이블을 생성 해준다. 데이터는 임시로 아래와 같이 넣어준다. 2. MyBatis 라이브러리 의존성 추가 build.gradle 파일에 의존성을 추가해준다 dependencies { ~ // MyBatis 라이브러리 의존성 추가 implementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:2.2.0' runtimeOnly 'mysql:mysql-connector-java:8.0.25' } 3. DB 연동 application.yaml 파일에 아래와 같이 추가해준다. server: port..
2022.01.30 -
스프링부트 Profile 사용법
이전 게시글에서 스프링부트에서 profile을 application.yml파일에 정의를 했었다. 사용법은 사용을 원하는 클래스 바로위에 @Profile("프로파일 명")으로 쓰면 된다. 환경별로 코드가 다른데 쓰는것보다는 코드는 동일하고 프로파일안의 데이터소스에 DB 정보들에 사용하는게 유용할 것 같다. IntelliJ에서 실행해보니 default로 prod로 실행이 되어 dev로 실행하는 법을 알아보았다. Run -> Edit Contiguration 우측 Modify options를 클릭하고 Add VM options를 클릭한다. 그리고 vm option칸에 -Dspring.profiles.active=프로파일 을 입력한 뒤 실행을 해주면 해당 프로파일로 실행이 가능하다. 추후 서버에서는 java -..
2022.01.16 -
[InteliJ + Spring Boot + Gradle] Rest API Server 구축하기(3) - API 컨트롤러 및 서비스 생성 및 dto 활용
개발환경 IDE : InteliJ Spring Boot : 2.6.2 JDK : 17 1. DTO 생성 dto 패키지를 생성해주고 안에 UserInfo.java 자파클래스를 한개 생성한다. package com.kwaneung.apiserv.user.dto; import lombok.Data; @Data public class UserInfo { String name; Integer age; String role; } @Data : Lombok 어노테이션. getter와 setter를 생성해준다. 2. Service 수정 Service에 dto를 활용하는 로직을 추가한다. package com.kwaneung.apiserv.user.service; import com.kwaneung.apiserv.use..
2022.01.14 -
[InteliJ + Spring Boot + Gradle] Rest API Server 구축하기(2) - API 컨트롤러 및 서비스 생성
개발환경 IDE : InteliJ Spring Boot : 2.6.2 JDK : 17 1. Controller 생성 controller 패키지를 생성해주고 안에 TestController.java 자바클래스를 한개 생성한다. package com.kwaneung.apiserv.user.controller; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; @RestController @RequestMapping("/user") public class TestController { @GetMapping("..
2022.01.14