본문 바로가기

웹 개발/Spring

[Web_Spring] 01

● 프레임워크

- 뼈대나 근간을 이루는 코드들의 묶음

- 개발자는 각 개개인의 능력 차이가 큰 직종이고, 개발자 구성에 따라 프로젝트 결과 역시 큰 차이를 낳는다.

- 이런 상황을 극복하기 위한 코드의 결과물이 바로 프레임워크이다.

- 프로그램의 기본 흐름이나 구조를 정하고 모든 팀원이 이 구조에 자신의 코드를 추가하는 방식으로 개발하게 된다.

 

 

 

● 프레임워크의 장점

- 개발에 필요한 구조를 이미 코드로 만들어 놓았기 때문에, 실력이 부족한 개발자라 하더라도

   반쯤 완성한 상태에서 필요한 부분을 조립하는 형태의 개발이 가능하다.

- 회사 입장에서는 프레임워크를 사용하면 일정한 품질이 보장되는 결과물을 얻을 수 있고,

   개발자 입장에서는 완성된 구조에 자신이 맡은 코드를 개발해서 넣기 때문에 개발 시간을 단축할 수 있다.

 

 

 

● 스프링 프레임워크

- 경량 프레임워크(light-weight)

- 예전 프레임워크는 다양한 경우를 처리할 수 있는 기능을 가지도록 만들다 보니 하나의 기능을 위해서

   너무 많은 구조가 필요했다.

- 기술이 너무나 복잡하고 방대했기 때문에, 전체를 이해하고 개발하기에는 어려움이 많았다.

- 그래서 스프링 프레임워크가 등장, 특정 기능 위주로 간단한 jar 파일 등을 이용해서 모든 개발 가능하도록 구성되어 있다.

 

 

 

● 스프링 프레임워크의 장점

- 복잡함에 반기를 들어서 만들어진 프레임워크

- 프로젝트 전체 구조를 설계할 때 유용한 프레임워크

- 다른 프레임워크들의 포용(여러 프레임워크를 혼용해서 사용 가능)

- 개발 생산성과 개발 도구의 지원

 

 

 

● 스프링 프레임워크의 특징

- POJO 기반의 구성

- 의존성 주입(DI)을 통한 객체간의 관계 구성

- AOP(Aspect-Oriented-Programming) 지원

- 편리한 MVC 구조

- WAS에 종속적이지 않은 개발 환경

 

 

 

● 스프링 부트

- 스프링 프레임워크를 사용함에 있어서 초기 설정 및 필요한 라이브러리에 대한 설정의 어려움이 많으며,

   시간이 너무 많이 걸리기 때문에 자동설정(AutoConfiguration)과 개발에 필요한 모든 것을 관리해주는 스프링 부트 선호

- 각 코어 및 라이브러리의 버전들도 일치시켜야 하지만 스프링 부트를 사용하면 이러한 복잡성을 해결하기에도 좋다.

 

 


 

● IntelliJ 설치

1. 구글에 intellij 검색 > 다운로드 클릭 > 기타버전 클릭

2. Version 2020.1.1 선택 > Windows ZIP Archive(zip) 클릭하여 다운로드

3. resouce에 압축 해제 > bin폴더 > idea64.exe 실행

4. I confirm... 체크 > Continue > Don't Send > UI theme 선택

5. Next default plugins > Next Featured plugins > start using intellij IDEA

6. Evaluate for Free > Evaluate

 

 

 

● 프로젝트 기본 경로

1) src/main/java : 서버단 JAVA 파일

2) test/main/java : 단위 테스트 JAVA 파일

3) src/main/resources : 설정 파일 및 뷰단

4) src/main/resources/static : css, js, image 파일 경로

5) src/main/resources/templates : html 파일 경로

6) src/main/resources/application.properties : 서버, 경로 및 DB 설정 파일

7) pom.xml : 라이브러리 의존성 관리

 

 

 

 

실습(프로젝트 생성 및 출력 테스트)

1. 프로젝트 생성

 

 

 

2. src/main/java/com.example.ex00/Ex00Application.java

package com.example.ex00;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;

@SpringBootApplication(exclude = DataSourceAutoConfiguration.class)
public class Ex00Application {

    public static void main(String[] args) {
        SpringApplication.run(Ex00Application.class, args);
    }

}

 

 

 

3. src/main/resource/application.properties

#server port
server.port = 10000

 

 

 

4. src/main/resource/templates/index.html

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Welcome to Spring Boot</title>
</head>
<body>
<h1>My First Project Success</h1>
</body>
</html>

 

결과

 

 

 

 

'웹 개발 > Spring' 카테고리의 다른 글

[Web_Spring] 07  (0) 2022.06.19
[Web_Spring] 06  (0) 2022.06.18
[Web_Spring] 05  (0) 2022.06.17
[Web_Spring] 03  (0) 2022.06.15
[Web_Spring] 02  (0) 2022.06.14