Spring/이론

Spring 개발 환경 구축하기(1) [스마트인재개발원]

harotea 2021. 6. 16. 11:19

본 개발환경 구축 방법은 전자정부 표준프레임워크 기반으로 개발환경을 구축하는 방법입니다.

* 먼저 전자정부 표준프레임워크 포털에 접속한다!

메뉴 - 개발자 교육 - 교육자료 - 컴퓨터 사양에 맞는 실습재 다운로드하기

 

exe파일을 실행시켜 다운로드한다. 단, 경로를 C드라이브에 바로 지정해준다.

 

데이터베이스 서버 연결을 위해 프레임워크 안에 내장되어 있는 mysql에서 root파일에 접근하여 기본 설정을 해주자.

>startup.bat 파일을 실행시킨다.
앞의 파일을 실행시킨 뒤에 cmd를 열어준다

cmd 실행창을 연 뒤, cd C:\eGovFrame-3.10.0\bin\mysql-5.6.21\bin 를 입력한다.

mysql -u root -p 입력

처음 상태는 password가 입력되어있지 않기 때문에 mysql안의 계정에 접근하여 비밀번호를 설정해 준다.

use mysql;
show tables; -- 테이블리스트 보기
select * from user -- 계정 정보가 담긴 테이블 보기
mysql> update user set password=password('12345') where host='localhost' and user='root'; -- 계정 비밀번호 설정하기

 

계정 비밀번호가 설정되면 따로 쓸 데이터베이스 안의 테이블을 만들어준다.

나는 iot라는 테이블을 만들어주었다.

그리고 다시 이클립스로 돌아가서 Database Connections > 오른쪽 마우스 new 클릭

MYSQL 클릭!

 

Drivers 오른쪽 New Driver Definetions > 아까 생성한 데이터베이스 테이블 iot를 Database 칸에 입력해 준다.

비밀번호도 cmd 창에서 설정해줬던 12345를 입력한다.       *비밀번호 입력 후 save 꼭 체크하자!*

변경하면 다음과 같다.

이렇게하면 이클립스에 mysql database가 연결된다!


+ Spring을 배우기 앞서, 추가로 개념정리 하면 좋을 것!

3-Tier 레이어,  MVC 패턴

 

MVC 패턴

MVC 패턴

디자인패턴 중 하나이다. 하나의 어플리케이션, 프로젝트를 구성할 때 그 구성요소를 세가지의 역할로 구분한 패턴이다.

Model : 어플리케이션의 정보, 데이터를 나타낸다.

  • 사용자가 편집하길 원하는 모든 데이터를 가지고 있어야 한다!
  • 뷰나 컨트롤러에 대해서 어떤 정보도 알지 말아야 한다.
  • 어떠한 변경이 일어났을 때, 변경 통지에 대한 처리방법을 구현해야만 한다.

View : 데이터 및 객체의 입력, 보여주는 출력을 담당한다. 데이터를 기반으로 사용자들이 볼 수 있는 화면이다.

  • 모델이 가지고 있는 정보를 따로 저장해서는 안된다.
  • 모델이나 컨트롤러와 같이 다른 구성요소들을 몰라야 한다.
  • 어떠한 변경이 일어났을 때, 변경 통지에 대한 처리방법을 구현해야만 한다.

Controller :  데이터와 사용자인터페이스 요소들을 잇는 다리역할을 한다. 즉, 사용자가 데이터를 클릭하고, 수정하는 것에 대한 "이벤트"들을 처리하는 부분을 뜻한다.   컨트롤러 구성은 가볍게..!!

  • 모델이나 뷰에 대해서 알고 있어야 한다.
  • 모델이나 뷰의 변경을 모니터링 해야 한다.

 


* 다음 포스팅에서 더 자세히 알아보자!


3계층 구조(3 Tier Architecture)
web presentation layer - frontcontroller(user가 가장 먼저 부딪히는 층)
service(business) layer
persistence layer(영속성 레이어) - 데이터베이스 CRUD - DAO

프레젠테이션 게층(Presentation Tier) - GUI 또는 front-end
어플리케이션 계층(Application Tier) - Business Logic 계층 또는 Transaction 계층 / Middleware 또는 back-end
데이터 계층(Data Tier) - DBMS, back-end

 

 

 

 

 

해당 수업은 '스마트인재개발원'에서 '지능형IoT 융합SW 전문가과정(NCS)과정'에서 진행한 교육내용입니다.

 

 

스마트인재개발원

4차산업혁명시대를 선도하는 빅데이터, 인공지능, 사물인터넷 전문 '0원' 취업연계교육기관

www.smhrd.or.kr