Code.presso Java 웹 개발 트랙 체험단 활동 3주차 두번째 코스로 수강한 강의는 Spring Boot를 활용한 웹 개발 에 관한 내용이다.
그 중 이번 포스팅에서는 Spring Framework의 간단한 소개, HTML&CSS 기초내용에 대해 다뤄보도록 하겠다😊
강의 제목은 "Spring Boot 웹 개발 입문"으로, 자세한 정보는 👇🏻아래👇🏻 링크를 통해 확인할 수 있다.
✋🏻 포스팅 내 사용된 사진 파일들의 저작권은 모두 코드프레소에 있으며, 강의자료 공유 및 업로드는 불가능합니다.
Spring Framework는 웹 개발만을 위한 프레임워크는 아니지만, 주로 웹 애플리케이션 개발을 위해 활용된다.
작은 게시판과 같은 웹 애플리케이션부터, Netflix 수준의 대규모 애플리케이션을 개발하는데 적용할 수 있고, 실제로 국내외 많은 기업들이 Spring Framework를 핵심 기술로 활용 중이다.
Spring Framework의 장점으로는,
등이 있다.
그 중 제일 큰 장점은 끊임 없는 개선이 이루어지고 있다는 것이다.
최근 소프트웨어 시스템은 점점 더 거대해지고 복잡해지는데, Spring Framework는 변화하는 기술에 빠르게 대응하여 꾸준히 새로운 프로젝트를 출시하고 있다.
그렇다면, 우리가 다루게 될 "Spring Boot"는 무엇일까🧐❓
Spring Boot란, Spring Framework를 보다 손쉽게 활용할 수 있게 하는 기술이다.
복잡한 설정이나 의존성 관리, 애플리케이션 모니터링, 서버의 실행 등을 가볍고 빠르게 수행할 수 있다.
📌 웹 서비스 개발을 하기 위해서는 다양한 직군이 협력을 한다.
📌 우리가 자주 사용하는 Web Framework
📌 SW Framework
SW Framework는 SW 개발을 효율적으로 하기 위한 반제품이다.
특정 분야의 SW 개발에 필요한 공통 기능을 제공하며,
사용자는 Framework에 필요한 기능을 추가하여 전체 애플리케이션을 완성시킨다.
우리는 spring initializr 웹 사이트에서 Spring Boot 프로젝트를 생성하여 사용할 것이다!
이와 같이 기본적인 설정을 마치고 Generate
버튼을 눌러 프로젝트를 생성한다.
IntelliJ 를 통해 프로젝트를 열고 관련 라이브러리들을 다운받게 되면, 최종적으로 이런 화면이 뜬다!
com.codepresso.helloworld
패키지 아래에 controller
라는 패키지를 하나 더 만들고, HelloWorldController.java
파일을 생성해 다음과 같이 작성해보자!
(+ 각각의 어노테이션에 대해서는 추후에 자세히 배울 예정이다!)
그리고나서 실행시키면 위와 같은 로그가 뜨는데 성공적으로 잘 실행이 됐다는 의미이다.
브라우저를 열어 localhost:8080
으로 접속해보면, 우리가 의도한 대로 "Hello Spring Boot!!" 라는 문구가 잘 뜨는 것을 확인해 볼 수 있다😊
기본적으로 인터넷은 Client와 Server로 이루어져있고, 어떤 서버의 데이터를 요청하는지 정확하게 알아야 한다.
1. IP 주소
2. Hostname
긴 숫자(일부 문자)형태의 IP 주소는 외워서 활용하기가 어렵다.
그렇기 때문에 IP 주소 대신 사람이 읽고 외우기 쉬운 형태의 주소인 Hostname이 존재한다.
호스트는 인터넷상에 IP 주소를 가진 기기를 의미하고, 호스트명으로 기기의 IP 주소를 찾을 수 있다.
➡️ blog.naver.com
, news.google.com
3. localhost
127.0.0.1
라고 표현되며, 웹 서버를 원격이 아닌 내 컴퓨터로 실행했을 경우 이렇게 연결한다.4. port
0~65,535
까지 사용 가능하며 호스트 내부에서 Port 주소는 유일해야 한다.HTML 이란, HyperText Markup Language의 약자이다.
HTML은 정보를 구조적으로 사용하기 위해 Tag
라는 개념을 사용한다
📌 실습은 링크텍스트에서!
웹 기반으로 HTML, CSS를 테스트 할 수 있는 에디터이다.
HTML은 계층형 구조이다.
사진과 같이, html tag는 최상위 태그이고, head tag는 문서의 부가 정보를 담는 태그, body tag는 문서의 컨텐츠를 담는 태그로 사용된다.
실제 HTML 문서의 컨텐츠는 모두 Tag로 둘러쌓여있고, 브라우저는 Tag와 Tag내의 컨텐츠를 읽어서 사용자에게 보여준다.
📌 많은 수의 Tag가 존재하지만, 사용되는 종류는 제한적이므로 모두 외울 필요는 없다!
1. <h1></h1>
- Heading
2. <p></p>
- Paragraph
3. <br>
- Line Break
<br>
혹은 <br/>
을 이용해 줄바꿈을 해야한다.4. <b></b>
- Bold
<b></b>
는 단순 bold 처리를 하고, <strong></strong>
은 보기엔 같아 보이지만, 음성 강조와 같은 역할을 추가로 한다.5. <i></i>
- Italic
<i></i>
는 단순 처리를 하고, <em></em>
은 보기엔 같아 보이지만, 음성 강조와 같은 역할을 추가로 한다.6. <u></u>
- Underline
7. <img></img>
- Image
8. <a href=?></a>
- Link
하나의 테이블을 만들기 위해서는 <table></table>
태그를 이용한다.,
표 내부의 1개의 행은 <tr>...</tr>
태그를 이용하고,
표 내부의 1개의 셀은 <td>...</td>
태그를 이용한다.
이러한 테이블을 만든다고 가정해보자.
<table>
<tr>
<td>과목명</td>
<td>학점</td>
<td>강의실</td>
</tr>
<tr>
<td>빅데이터 분석</td>
<td>2</td>
<td>A101</td>
</tr>
<tr>
<td>비즈니스 빅데이터 플랫폼</td>
<td>1</td>
<td>A201</td>
</tr>
</table>
이와 같은 코드가 나올 것이다.
각각의 태그들이 가지는 속성에 대해 조금 더 자세히 알아보자😊
1. Table Header
표의 제목과 셀은 <th>...</th>
태그로 정의하면 볼드체로 처리된다.
2. <table>
태그의 border attribute
<table border=1>
과 같이 표의 테두리 두께를 지정할 수 있다.
3. <caption>
태그로 표의 설명 추가
<caption>설명 추가</caption>
으로 표의 설명을 추가할 수 있다.
HTML의 List에는 unordered 와 ordered 가 있다.
unordered list는 <ul>...</ul>
태그로, ordered list는 <ol>...</ol>
태그로 정의하고,
각 list 내의 아이템은 모두 <li>...</li>
태그로 나열하여 정의한다.
이와 같이 하나의 리스트 안에 또 다른 리스트를 중첩해서 만드는 것도 가능하다.
<ol>
태그에 type attribute를 사용해 다양한 효과를 지정할 수 있다.
<ul>
태그에 style attribute를 사용해 다양한 효과를 지정할 수 있다.
앞서 정리한 table 과 list 보다 훨씬 더 많이 사용되는 Form Tag에 대해 알아보자.
전체 입력은 <form>...</form>
태그로 이루어져 있고, 사용자들로부터 입력 받을 각각의 정보들은 <input>
태그의 type 속성으로 지정한다.
이와 같이 일반 문자열을 받기 위해서는 타입으로 text를 지정하고, 문자열이 노출되지 않는 비밀번호 창을 만들고 싶다면 password 타입을 지정한다.
radio 타입은 성별을 고를 때와 같이, 여러개의 정보중 하나만을 입력받기 위한 경우에 사용하고,
checkbox 타입은 관심분야를 고를 때와 같이 여러개의 정보를 동시에 입력받기 위한 경우에 사용한다.
📌 실제로 이 외에도 다양한 attribute value 값이 존재하니, 다양한 실습을 통해 익혀보자!
HTML 만을 사용하기에는 디자인의 한계가 있다😅
CSS는, HTML 태그의 한계를 극복하기 위한 기술이다.
HTML은 정보를 표현하는데 집중한다면, CSS는 문서를 시각적으로 꾸미는 기능에 집중한다!
이렇게 하면 정보를 제공하는 부분과 디자인을 제공하는 부분을 분리할 수 있게 된다!
CSS는 HTML 문서 안의 <style>..</style>
태그 내에 코드를 삽입함으로써 사용할 수 있다.
어떤 태그에 어떤 효과를 적용할 것인지 표현한다.
➡️ body 태그 영역의 배경색을 노랑색으로 표현하겠다.
CSS를 활용한 적용 대상 지정하는 방법에는 크게 3가지가 있다.
바로 이전 단계에서는 HTML 태그명을 이용해 적용 대상을 지정해보았다.
이번 단계에서는 특정 태그에만 효과를 지정하고자 할 때 사용하는 id, class를 알아보겠다😊
1. id
#
을 사용한다.2. class
.
을 사용한다.이렇게 Spring Framework, HTML&CSS의 기본 개념에 대해 학습해보았다!
코드프레소 홈페이지(https://www.codepresso.kr/)에는 오늘 포스팅한 Spring Boot를 활용한 웹 개발 관련 강의뿐만 아니라 다양한 강의들이 개설되어 있으니 모두 한번 씩 살펴보고 수강해보면 좋을 것 같다😃