본문 바로가기

서버/Spring
[스프링(Spring)] 환경설정

// 프레임워크, Framework
    - 특정한 목적에 맞게 프로그래밍을 쉽게 하기 위한 약속

// Spring Framework(틀)
    - http://spring.io
    - Spring 1.0 ~ 6.0
    - Spring 3.XX ~ 5.XX 
    - 자바 플랫폼을 위한 오픈 소스 애플리케이션 프레임워크
    - 콘솔 프로그램 or 응용 프로그램 or 웹 응용프로그램 > 대부분 웹 응용 프로그램
    - Servlet/JSP 버전업!
    - 전자 정부 표준 프레임워크로 채택 > Spring 기반 > 공공기관 프로젝트 or 대기업

// 스프링 프레임워크 구성 요소(주요 기술)

    1. POJO 기반
    2. 의존성 주입 지원(DI)
    3. 관점 지향 프로그래밍 지원(AOP)
    4. Spring MVC
    5. 레이아웃 지원(Tiles)
    6. 데이터베이스 연동 지원
        - JDBC
        - Spring JDBC (X)
        - ORM(JPA) > Hibernate (O)
        - MyBatis > 점유율 1위 (O)


// 개발 환경
    - OpenJDK 11(X) > Oracle JDK 11(O)
    1. Eclipse 사용 > 설정할 게 많음 > 손이 많이 감...
    2. Eclipse + 확장 프로그램(STS) > 간편!
    3. STS(Eclipse가 들어 있음) > 간편 
        - STS 3.X > Spring 개발
        - STS 4.X > Spring Boot 개발

    - sts-bundle
        ~ sts-3.9.18.RELEASE > STS
        ~ pivotal-tc-se

    - 환경변수 설정 : %JAVA_HOME% > ORACLE JDK 11 설치된 디렉토리
        ~ C:\Program Files\Java\jdk-11\

    - STS.ini > 메모장에서 vm 설정
        ~ C:\Program Files\Java\jdk-11\bin\javaw.exe

    - 롬복 재설치 > sts 폴더 잡기
        ~ java -jar lombok.jar

    - Tomcat 9 > 9.0.76 > 64-bit Windows zip    

    - tomcat server.xml 에서 포트번호 8091로 변경(2개)


// 프로젝트 생성하기
    - New > Spring Legacy Project 
               > Spring MVC Project
               > name : "BeginTest"
               > "com.test.begin"

// Spring MVC Project > 프로젝트 구조

    1. src/main/java
        - 여태까지 사용하던 Java 소스 폴더
        
    2. src/main/resources
         - Java 소스 이외의 자원 폴더
         - 주로 스프링 설정 파일들을 보관
    
    3. src/test/java
         - 테스트용
    
    4. src/test/resources
        - 테스트용

    5. JRE System Library
       - JRE jar
       - JavaSE-1.6 > JDK 1.6  > JDK 11 버전으로 수정 필요

    6. Maven Dependencies
        - 메이븐(빌드 도구, 라이브러리 관리 도구 등)
        - 프로젝트 생성 & 유지 관리 & 배포를 도와주는 프로그램
        - 수업용 > jar 파일 관리

    7. src
       - 1~4번까지의 폴더를 물리적으로 표현 > 윈도우 탐색기처럼 표시 
    
        7.1 webapp
            - 웹 루트 폴더
    
        7.2 webapp > resources
            - CSS, JavaScript, Images 등을 저장하는 폴더
            - 강제력(X) > 권장(O)
    
        7.3 webapp > WEB-INF
    
            7.3.1 classes
                - 컴파일된 클래스 파일 저장폴더(이전에 bin)
                - 개발자 관여 X
    
            7.3.2 spring ★★★★★★
                - 스프링의 모든 설정
    
                7.3.2.1 appServlet
                    - servlet-context.xml : 스프링 설정 파일(스프링 MVC, 웹 관련)
    
                7.3.2.2 root-context.xml : 스프링 설정 파일(스프링 전반)
    
            7.3.3 views
                - 뷰 페이지 폴더
    
            7.3.4 web.xml
                - 아파치 톰캣 서버 설정
    
            7.4 pom.xml, Project Object Model
                - 메이븐 프로그램 설정 파일
    
    
* C:\Users\user\.m2\repository >> 메이븐이 다운로드한 jar 보관 폴더(오류나면 날리고 다시..)

'서버 > Spring' 카테고리의 다른 글

[스프링(Spring)] MVC 에러 처리  (0) 2023.06.16
[스프링(Spring)] MVC 데이터 수신 및 전송  (1) 2023.06.15
[스프링(Spring)] AOP  (1) 2023.06.15
[스프링(Spring)] JUnit  (0) 2023.06.14
[스프링(Spring)] DI, IoC  (0) 2023.06.14