강의

멘토링

로드맵

Inflearn brand logo image
BEST
개발 · 프로그래밍

/

백엔드

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

Java와 Spring Boot, JPA, MySQL, AWS를 이용해 서버를 개발하고 배포합니다. 웹 애플리케이션을 개발하며 서버 개발에 필요한 배경지식과 이론, 다양한 기술들을 모두 학습할 뿐 아니라, 다양한 옵션들의 의미, Spring Boot의 역사와 가장 최신 버전의 변경점들도 짚어봅니다.

(4.9) 수강평 136개

수강생 1,709명

  • 최태현
백엔드개발자
JavaSpring BootSpringJPAAWS

먼저 경험한 수강생들의 후기

이런 걸 배울 수 있어요

  • 스프링부트, MySQL, JPA, Linux, AWS, Github, Gradle 등 서버 개발에 필수적인 기술들!

  • 네트워크, 데이터베이스, API, 도메인, 클라우드 등 서버 개발에 필요한 이론과 개념들!

개발부터 배포까지 전부!
이 강의 하나로 경험할 수 있어요 😮

서버 개발의 A to Z,
궁금하시죠?
 👩‍💻

✅ Java를 공부하셨는데, 다음 학습 목표를 찾고 있는 분
✅ 서버 개발이 어떻게 이루어지는지 알고 싶은 분
✅ 서버개발자가 되려면 어떤 개념과 기술을 공부해야 하는지 궁금한 분

그런 분들을 위해 준비했습니다. 자바와 스프링 부트로 하는 서버 개발의 모든 것!

본 강의에서는 Java, Spring Boot, JPA, MySQL, AWS를 이용해 서버를 개발하고 배포합니다. 이 과정에서 서버 개발에 필요한  다양한 배경지식 / 이론 / 기술을 쉽고 재미있게 학습하게 됩니다.


커리큘럼을 
확인해보세요 📚

Section #1.
생애 최초
서버 API 만들기

  • 스프링 부트 프로젝트를 설정해 시작하고 실행하는 방법을 살펴봅니다.
  • 서버란 무엇인지, 네트워크, HTTP, API, JSON은 무엇인지 등 서버 개발에 필요한 다양한 개념들을 알아봅니다.
  • 스프링 부트를 애용해 간단한 GET API / POST API를 만들어 봅니다.

Section #2.
생애 최초
Database 조작하기

  • 디스크와 메모리의 차이를 이해하고, Database의 필요성을 이해합니다.
  • MySQL Database를 SQL로 조작하는 방법을 다룹니다.
  • 스프링 서버를 이용해 Database에 접근하고 데이터를 저장, 조회, 업데이트, 삭제해 봅니다.
  • API의 예외 상황을 알아보고 예외를 처리할 수 있게 됩니다.

Section #3.
역할의 분리와
스프링 컨테이너

  • 좋은 코드가 왜 중요한지 이해하고, 원래 있던 Controller 코드를 보다 좋은 코드로 리팩토링합니다.
  • 스프링 컨테이너와 스프링 빈이 무엇인지 다룹니다.
  • 스프링 컨테이너가 왜 필요한지, 좋은 코드와 어떻게 연관이 있는지 살펴봅니다.
  • 스프링 빈을 다루는 여러 방법을 이해하고, 실습해봅니다.

Section #4.
생애 최초
JPA 사용하기

  • 문자열 SQL을 직접 사용하는 것의 한계를 이해하고, 해결책인 JPA, Hibernate, Spring Data JPA가 무엇인지 다룹니다.
  • Spring Data JPA를 이용해 데이터를 생성, 조회, 수정, 삭제해봅니다.
  • 트랜잭션이 왜 필요한지 이해하고, 스프링에서 트랜잭션을 제어하는 방법을 다룹니다.
  • 영속성 컨텍스트와 트랜잭션의 관계를 이해하고, 영속성 컨텍스트의 특징을 알아봅니다.

Section #5.
책 요구사항
구현하기

  • 책 생성, 대출, 반납 API를 온전히 개발하며 지금까지 다루었던 모든 개념을 실습해 봅니다.
  • 객체지향적으로 설계하기 위한 연관관계를 이해하고, 연관관계의 다양한 옵션에 대해 살펴봅니다.
  • JPA에서 연관관계를 매핑하는 방법을 살펴보고, 연관관계를 사용할 때와 사용하지 않을 때의 차이점을 다룹니다.

Section #6.
생애 최초
배포 준비하기

클라우드 서비스 | 클라우드 컴퓨팅 솔루션| Amazon Web Services

  • 배포가 무엇인지 이해하고, 배포를 하기 위해 어떤 준비를 해야 하는지 알아봅니다.
  • 스프링 서버를 실행할 때 DB와 같은 설정을 코드 변경 없이 제어하는 방법을 알아봅니다.
  • git과 github의 차이를 이해하고 git에 대한 기초적인 사용법을 알아봅니다.
  • AWS의 EC2가 무엇인지 이해하고, AWS를 통해 클라우드 컴퓨터를 빌려봅니다.

Section #7.
생애 최초
배포하기

클라우드 서비스 | 클라우드 컴퓨팅 솔루션| Amazon Web Services

 
  • EC2에 접속하는 방법을 알아보고, EC2에 접속해 리눅스 명령어를 다룹니다.
  • 개발한 서버의 배포를 위해 환경 세팅을 리눅스에서 진행하고, 실제 배포를 진행해 봅니다.
  • foreground와 background의 차이를 이해하고 background 서버를 제어해 봅니다.
  • 도메인 이름을 사용할 사용자가 IP 대신 이름으로 접속할 수 있도록 설정해 봅니다.

Section #8.
Spring Boot의
이모저모

  • build.gradle의 의미와 빌드 스크립트를 이해하는 방법, YAML 문법, lombok을 다룹니다.
  • Spring과 Spring Boot 차이점에 대해 이해하고 역사를 간략히 살펴봅니다.
  • 가장 최신 버전인 Spring 3.0 버전대의 큰 변경 내용에 대해 살펴보고, 우리의 서버를 3.0으로 마이그레이션 해봅니다.

Section #9.
업데이트 되는
추가 영상!

  • 본 강의를 수강하신 분들께 추가적인 학습 방향성을 안내 드립니다.
  • AWS에서 사용했던 컴퓨터를 종료하는 방법과, AWS 비용을 계산하는 방법을 살펴봅니다.
  • MyBatis를 적용하는 방법과, JdbcTemplate / MyBatis / Spring Data JPA를 비교하고, 언제 어떤 기술을 사용해야 하는지 간단히 알아봅니다.
  • 스프링에서 정적 파일을 처리하는 방법을 살펴봅니다.

 


수강생 여러분을 위해 준비한 
이 강의만의 키 포인트 🔑

Point 1

무한 복습을 위한 강의 자료 

강의 내용을 완벽하게 정리한 217페이지 분량의 핸드북과 1,122페이지 분량의 PPT를 드립니다.

Point 2

서버 개발에 집중하세요 

서버 개발에만 집중할 수 있도록 도서 관리 애플리케이션을 위한 웹 UI를 제공해드립니다.

 

Point 3

개념 설명도 재미있게 

서버 개발에 필요한 다양한 기술은 물론, 전반적인 이론과 개념들에 대한 설명도 쉽고 재미있게 준비했습니다!

 

Point 4

옵션에 대한 상세한 설명까지 

서버를 개발하며 옵션 하나하나에 대한 설명도 놓치지 않습니다! Spring Boot의 역사와 가장 최신 버전인 Spring Boot 3 버전의 변경 내용까지 살펴봅니다!


수강평 미리 보기 👀

*아래 수강평은 지식공유자의 코틀린 강의에 대한 수강평입니다.

★★★★★

강의 내용 엄청 알차네요. 강사님께서 가진 스타일이나 스킬들을 강의 중간중간에 팁으로 풀어주셔서 하나둘씩 얻어가네요. 설명이 다양해서 미리 궁금할 법한 점들을 속 시원하게 긁어주었습니다. 왜? -> 설명, 그리고 장단점들과 다양한 예시들.. 최고였습니다. 가격보다 더 많은 것들을 얻어가는 부분이었고, PPT도 엄청 정성 쏟으신 게 보입니다! 감사합니다.

-Wo***

★★★★★

지나칠 정도로(?) 겸손한 강사와 내공이 느껴지는 강의 내용이 인상적입니다. 한 강의에서 개발 전반에 필요한 지식을 한 번에 학습할 수 있어서 좋았고 강의하는 입장에서는 힘드시겠지만, 실무에 가까우면서도 꼭 필요한 가상의 요구사항을 같이 개발해보는 컨셉으로 시리즈물이 나왔으면 하는 욕심을 부려봤습니다. 감사합니다.

- 정***

★★★★★

강의 내용부터 속도까지 전체적으로 완전 저한테 찰떡인 강의였습니다! 감사합니다 :)

-Je***

★★★★★

예제와 잘 정리된 강의 때문에 직접 정리할 시간을 많이 줄여주는 좋은 강의라고 생각합니다.

-go***

★★★★★

강사님을 알게 되어 코틀린의 재미를 알게 되었습니다! 비록 수강평이지만 너무 감사드리고 인생 강사님을 만나게 된 것 같은 시간이었어요! 다음 강의계획이 어떻게 되시는지 모르겠지만 나오면 무조건 필구 예정입니닷!!

-원***

★★★★★

강의는 다른 리뷰들이 말한 거처럼 이해하기 좋아요. 근데 제일 좋은 건 질문하면 정말 성심성의껏 자세히 알려주시는 점이 정말 좋습니다 예를 들면 이런 간단한 질문에도.. 감동!

- 아***


지식공유자의 다른 강의 📺


이런 분들께
추천드려요

학습 대상은
누구일까요?

  • Java 언어만 알고 있는데, 서버를 배워보고 싶은 분!

  • Java와 Spring Boot를 활용한 서버 개발을 해보고 싶은 분!

  • 강의 하나로 개발부터 배포까지 필요한 모든 것을 편안하게 학습하고 싶은 분!

  • JS나 Python으로 서버 개발 부트캠프를 들었는데, Java Spring으로도 서버 개발을 해보고 싶으신 분

선수 지식,
필요할까요?

  • Java 언어에 대한 기초지식

안녕하세요
입니다.

10,094

수강생

717

수강평

764

답변

5.0

강의 평점

6

강의

안녕하세요 😊

제가 아는 내용을 이해하기 쉽고, 재미있게 설명드려 여러분들이 성장하실 때 행복함을 느끼는 개발자 최태현입니다.

 

  • (현) 캐치테이블[와드] 소프트웨어 엔지니어

  • (전) 스타트업 소프트웨어 엔지니어 리드

  • (전) 배달의민족[우아한형제들] 소프트웨어 엔지니어

  • (교육활동) Next Step 리뷰어 다수 참여, 공기관 & 스타트업 경진대회 강사 및 멘토, 스파르타 코딩클럽 멘토

  • 한국과학기술원 (KAIST) 졸업

 

커리큘럼

전체

73개 ∙ (12시간 35분)

해당 강의에서 제공:

수업자료
강의 게시일: 
마지막 업데이트일: 

수강평

전체

136개

4.9

136개의 수강평

  • mwjer3335108님의 프로필 이미지
    mwjer3335108

    수강평 1

    평균 평점 5.0

    5

    100% 수강 후 작성

    I was always in the state of 'Will this lecture be able to hear?', but the biggest motivation for me to access the lecture even in my absent-minded state was none other than the instructor's closing comment. I received encouragement and support, and I was able to finish it with strength. In fact, I had taken several Spring lectures before this lecture, Even though it was a basic course, it was not easy for a non-major + Java student who only saw it once..? I followed the hand-coding and listened to the explanation, but I was confused by the confusion of not knowing. Even after receiving the certificate after completing the course, I was in a state of chaos of 'Do I really know this?..?', so I actually put aside my high expectations for online lectures. However, after going through the entire process from development to deployment through this lecture, I now understand a little bit! There were only a few fragments floating in the air, but these guys finally started to organize it inside me as they got a feel for the structure. If I go back and listen to this lecture again and listen to other lectures, I think it will sound different now. The best part was that after implementing the code, he explained step by step why this work was needed and what it was for. In particular, whenever I asked questions like "Why? Why this?" while following the code, he kindly explained it to me right away after a minute, so I didn't have any special questions to ask^^ When I asked questions, he answered quickly and provided detailed explanations that weren't in the lecture, which were really great! In particular, since I had memorized annotations mechanically until now, I didn't know why they were needed or what the logic was, but I was able to understand them a little and look them up on my own. The most impressive part was the part where he separated the Controller into Service - Repository in three stages! I applied it to my work the next day after listening to the lecture. I succeeded in separating the code I was working on, which was a mess and focused on implementing functions, into three stages, and I even remember it more because it was so neatly organized! In particular, when I found myself calmly identifying the cause and solving it without panicking when an error occurred, I was really proud of myself. And instead of just saying I don't know... I was able to calmly practice reading other people's code! I've improved so much in such a short period of time, right? Haha At first, I thought, "Is this how fast the instructor speaks?" But instead, since he shares his knowledge step by step, I can understand it and the speed of his speech gradually gets better. I'm just a newbie, so yes, I still have a long way to go, but I'm deeply grateful to the instructor who has lit a light on this uncertain path. I'm already looking forward to the next lecture...... When will it come out??^^ I'm always paying attention to the instructor's steps (It's scary, right?? Haha) I'm rooting for you!! I will continue to improve in my own way, Thank you!

    • omg님의 프로필 이미지
      omg

      수강평 205

      평균 평점 5.0

      5

      97% 수강 후 작성

      I always end with the closing comment, "I will respect and honor the people who are listening to the lecture today. Thank you for your hard work." At first, I was actually embarrassed, but the more I listened, the more I felt like I was being respected, so I felt good. I worked harder.

      • lannstark
        지식공유자

        Hello, OMG!!! Thank you for leaving a valuable review! 😊 It's not easy to listen to the lecture, but I prepared this comment in hopes that everyone will finish it. Thank you for your kind words~~ 🙏

      • I'm adamant about these lol

    • syh39님의 프로필 이미지
      syh39

      수강평 6

      평균 평점 5.0

      5

      92% 수강 후 작성

      This lecture provides a shallow but broad knowledge of server development. I think it is good for beginners because you can experience the basics of one cycle of server development, from the definition of the server to basic API writing, DB connection, and distribution. I am confident that I can study efficiently if I listen to this lecture first and then study more deeply, so I am paying a lump sum even though it is expensive. The explanations are good and the content organization is good for seeing the big picture, so it seems suitable as the first lecture for those who want to study server development from a top-down method rather than a bottom-up method. Since the lecture content and delivery are good, if you become familiar with Java development, I think you should also consider the Coping lecture.

      • yongtech54님의 프로필 이미지
        yongtech54

        수강평 23

        평균 평점 5.0

        5

        100% 수강 후 작성

        This is a life lecture. It's been a long time since I bought the lecture, but I still felt that server development was difficult, and I was obsessed with building the basics first, so I studied many languages, Linux, SQL, low-level, front-end, etc. without discrimination. Everything I learned will be a great help in becoming a developer, but I think it was a long way to go to become the server developer I wanted to be right away. I think I didn't have a clear direction because I was studying on my own. I made a promise to myself to break free from my previous obsession and study the server I wanted to do, and I completed the lecture through the first Warm-up Club. I learned so much, and I felt that I had grown myself. It took me so long to take the first step to becoming a server developer, but with the confidence I gained this time and the solid basic skills, I think I will be able to grow faster than anyone else. It feels like all the fragmented knowledge I studied while wandering before has come together...! Thank you so much, instructor. Even though I'm only 30 years old now, I'll definitely get a job this year! Please continue to give me great lectures~! It's Teacher's Day, I haven't met you in person, but through the warm-up club and lectures, you've already become a great teacher to me. Stay healthy and happy!

        • mindoll님의 프로필 이미지
          mindoll

          수강평 3

          평균 평점 5.0

          5

          27% 수강 후 작성

          Wow, this is really amazing. I've taken many backend lectures from Infraon, but this is top tier teaching ability and he's really at the level of Hyunwoojin,,, This is really unbelievable, but can you please open an intermediate level backend lecture or an extension of it? It's almost solved all the concepts that were floating around in my head. Wow, this is really awesomeㅠㅠ Please open more lectures. I can't sleep because I'm looking forward to listening to the lectures and doing the practical training, seriously. Please really open more lectures ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ Hahahahaha This is really unbelievable, I was so moved before I finished the course that this is the first time I'm leaving a review for a lecture.

          • lannstark
            지식공유자

            Hello Minseok! 🙂 Oh my~~ Thank you so much for leaving such a sincere review!! 🙏 I'm so happy that you liked it! ㅎㅎㅎ I'm currently planning a practical lecture that follows this lecture, but it takes quite a long time to prepare for a practical lecture, so I think it will take about a year from the time I start in earnest 🥲 I will work hard to create good content without getting tired!! Thank you. 🙇

        배움이 더 쉬워지는 9월 깜짝 연장 중 (05:53:02 남음)

        ₩77

        24%

        ₩132,000

        최태현님의 다른 강의

        지식공유자님의 다른 강의를 만나보세요!

        비슷한 강의

        같은 분야의 다른 강의를 만나보세요!

        연관 로드맵

        강의가 포함된 로드맵으로 학습해 보세요!