본문 바로가기

프로그래밍/스프링부트(springboot)

(6)
Spring으로 비디오 스트리밍 만들어보기 공부를 하다 집중력이 떨어지면 유튜브 보는 것이 요즘 삶의 낙이다. 갑자기 번뜩 생각이 났다. Spring boot로 스트리밍을 만들어 볼까? 첫번째로 생각한 방법은 video 태그에 spring boot statics 경로를 넣는 것이다. 다들 알다 시피, spring boot static은 정적으로 파일을 들을 넣는곳이다. 이런식으로 넣게 되면 포트 설정을 8080 으로 한다고 가정하에 localhost:8080/Dynamite.mp4 를 url에 치게 되면 이런형식으로 동영상이 나오게 된다. 우리가 원하는 건 원하는 위치에 동영상에 띄우게 하는 것이기 때문에 컨트롤러에 url를 넣고 video 태그에서 불러오는 방식으로 진행을 하였다. 컨트롤러를 위처럼 지정해주고 video 태그에서 요청해준다. 그..
[스프링부트/springboot] 스프링 부트 JPA로 CRUD 해보기 저번꺼에 이어서 진행하도록 하겠습니다. buildscript { ext { // 스프링 부트 버전 springBootVersion = "2.2.0.RELEASE" } repositories { mavenCentral() maven { url "https://plugins.gradle.org/m2/" } // plugin 저장소 } dependencies { classpath "org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}" } } plugins { id 'org.springframework.boot' version '2.2.0.RELEASE' id 'io.spring.dependency-management' version ..
[스프링부트/springboot] 스프링 부트 JPA 설정해보기 JPA(Java Persistence API) 자바 ORM 기술에 대한 표준 명세로, JAVA에서 제공하는 API이다. 자바 어플리케이션에서 관계형 데이터베이스를 사용하는 방식을 정의한 인터페이스이다. 기존 EJB에서 제공되던 엔티티 빈을 대체하는 기술이다. ORM이기 때문에 자바 클래스와 DB테이블을 매핑한다. ORM? SQL Mapper? ORM은 DB 테이블을 자바 객체로 매핑함으로 써 객체 간의 관계를 바탕으로 SQL을 자동으로 생성해 주지만 Mappe는 SQL을 명시해주어야 한다. ORM은 RDB의 관계를 Object에 반영하는 것이 목적이라면, Mapper는 단순히 필드를 매핑시키는 것이 목적이라는 점에서 지향점의 차이가 있다. JPA는 왜 사용해야 할까? SQL 중심적인 개발에서 객체 중심적..
[스프링부트/springboot] 스프링 부트 배너 변경하기 스프링 부트가 만들어준 애플리케이션을 실행하면 콘솔에 다음과 같은 배너가 기본적으로 제공되고 배너 밑에 로그 메시지들이 출력된다. 그런데 이 배너가 보이기 싫으면 다음과 같이 애플리케이션을 실행하기 전에 배너 기능을 끄면 된다. @SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } } 배너를 끄지 전에, 많은 사람들이 기본적으로 이렇게 많이 사용하는데, SpringApplication 객체의 run 메서드를 생성 방식으로 바꿔 사용해 볼수 있다. @SpringBootApplication public class..
[스프링 부트/ springboot ] @Controller, @RestController로 컨트롤러 클래스 작성하기 컨트롤러는 스프링 MVC 프레임워크의 중식적인 역활을 수행하고, 컨트롤러는 HTTP 요청을 처리하고, 브라우저에 보여줄 HTML을 뷰에 요청한다. 또, Rest 형태의 응답 몸체에 직접 데이터를 추가한다. 저번에 프로젝트에 쓰던걸 이어서 쓰겠습니다. BootApplication 이라는 SpringBoot를 실행하는 메인 클래스를 지정한 Controller없이 이렇게 만 작성해 주세요. package com.example.spring; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public cla..
[스프링 부트/springboot] 스프링 부트 시작하기 , Gradle Project ( 인텔리 제이[IntelliJ] 사용) 이번에는 인텔리제이라는 개발 툴로 스프링 부트를 알아 보도록 하겠습니다. 먼저 설치 부터 해야겠죠? https://www.jetbrains.com/ko-kr/idea/download/#section=mac 저는 맥북을 사용하여 주소에는 맥 버전 주소가 올라갔지만 윈도우를 사용하시는 분들은 os에 맞게 바꿔주세요 인텔리 제이는 유료버전과 무료버전 두가지 버전이 있는데 저희는 무료 버전을 사용하도록 하겠습니다. Community 밑에 다운로드 버튼을 눌러 다운로드 해주세요. 저 같은 경우는 인텔리제이로 여러가지 사용중이여서 왼쪽에 목록이 뜨지만 새로 다운 받으신분들은 아무것도 안뜰것입니다. 먼저 프로젝트를 만들려면 'Create New Project' 를 눌러 주세요. gradle 프로젝트를 만들기로 하고 ..