정부전자프레임워크

[정부전자프레임워크-egovframework] 프로젝트 생성하기

김티처 2024. 1. 11. 10:13

 

- 주제 : 프로젝트 생성하기

- 기억해야 할 것 <기술 Stack>

  1. 프레임워크가 무엇인가?

  2. bulid-tools이 무엇인가?

  3. 라이브러리가 무엇인가?    프레임워크랑 차이가 무엇인가?

  

 

이것을 외우지 않고 공부하면 시간이 지나면서 포기할 마음이 점점 생길것이며 다양한 이론이 머리속에 엉킬 것입니다.

외우세요!! 

어떤 사람은 이렇게 이야기 합니다. 이해가 가야 외운다.

이런 말씀을 드리고 싶습니다. 처음 abcd를 배울때 그땐 이 알파벳이 어떻게 나중에 사용될지 모르고 배웁니다. 나중에 

되서야 아 그렇구나!!!   그때 열심히 공부할껄하고 후회 하곤 합니다. 마찬가지 입니다. 지금 배우는 공부가 개발자로 살아갈때 어찌 적용이 되는지 모릅니다. 그래서 이해할 만큼은 하되 이해가 안되면 암기하는 것입니다. 무조건적인 이해는 때로는 목적을 벗어나게 됩니다.

우리의 목적은 프로젝트 생성입니다.. 

 

프레임워크는 개발의 주도가 소프트웨어라는 것입니다. 요리사는 자기 주도 아래 요리를 하지만 밀키트는 요리사의 주도가 아닌 설명서의 주도아래 요리를 하죠. 요리의 예는 이해가 될겁이니다만 요리를 개발로 바꾸면 이해가 잘 안될 수 있어요. 이해하기 쉽지 않쵸. 개발을 한 경험이 있으면 좀 이해가 될 것입니다. 이럴때는 네 바로 암기입니다.

아..개발은 개발자가 주도하지 않고 어떤 틀에 만들어 놓은  것에  따라 개발한다.. 어떤 틀이 있다네..이렇게 외우는 겁니다.

그리고 좀 더 생각해 보면 프레임워크는하나의 뼈대라는 의미가 있죠. 아 어떤 뼈대를 만들어 놓았데. 밀키트도 미리 뼈대를 만든거 같네..   이렇게 외우는 겁니다. 더 이해하기위해서는 경험이 필요합니다.

 

빌드툴 - 프레임워크는 여러 기능이 있죠. 그 기능을 구현하기 위해서는 다양한 재료나 도구가 필요합니다. 그것을 관리하는 것을 빌드툴로 이해하시면 됩니다.

 

라이브러리는 기능을 구현할 때 필요한 것입니다. 

 

프레임워크는 틀을 만들어 놓고, 기능을 구현하기 위해 라이브러리를 포함시켜 놨고, 이것을 관리하는 툴이 빌드툴 정도로 

이해하시고 경험을 쌓으시면 됩니다.

빌트툴의 정의는 이것보다 훨씬많습니다.  >    컴파일, 토드해석, 코딩규약검사, 테스트, 패키징해서 압축파일만들기(배포) 등,  

 

 

자 그럼 경험을 하러 갑시다.

그 뼈대를 만들어 볼께요.. 프로젝트 생성을 한다는 뜻입니다.

 

그 전에 복습하나 하고 갈께요

폴더 기억 나시죠? 기억해야 합니다.. 

common 폴더에 있는 것은?

eclipse폴더에 있는 것은?

workspace 폴더가 의미하는 것은?

정답을 말씀하셨을거라 생각합니다. 자신의 답에의문이 생긴다면 폴더를 직접 클릭해 보세요. 

답은 스스로 완성하는 것입니다~~

 

자 다시 본론으로 돌아와서

뼈대를 만들어 볼께요.. 프로젝트를 생성한다는 의미죠

 

지금  만들 뼈대<프로젝트>는 eGovFrame web project 입니다. 웹기반 서비스를 개발하는 뼈대이죠.

웹이란것은 매우 중요한 이론인데 .

웹을 파고 들어 가면 목적에 벗어나기때문에.. 일단 외우는 겁니다.

웹브라우저로 http주소를 입력해서 서버의 서비스를 이용한다.  외우세요. 짧지만 개발자 냄새가 나는 문장입니다. 

 

웹시간 서비스를 개발할 목적이므로 eGovFrame web project 의 뼈대를 만들께요.

이정도 언급했으면 뼈대라는 단어가 프레임워크로 익숙해 지셨으니.

있어보이게 앞으로는 프레임워크로 사용할께요 

 

아래그림 처럼 File > New 해서 프로젝트를 생성하려고 합니다. 파란 색이 만들수 있는 프로젝트입니다.

많아요.

쫄지마세요. 하던것만 하면 됩니다. 핸드폰도 많은 기능 다 안쓰잖아요

살다보면 하나씩 만나게 됩니다. 다 만나지도 않습니다. 걱정마세요

 

지금 만들려고하는 프로젝트 기억나세요? 기억 안나면 위쪽에서 찾아 보세요. 

만들려는 프로젝트가 있으면 클릭하면 되지만 파란색 범위를 보니 없네요. 이럴때는 Other를 클릭해서 자세히

찾아 봅니다. 

 

 

 

아래와 같은 화면이 나오죠

이때 파란색으로 표시된 검색창에 eGovFrame Web Project로 검색해도 되고

창에서 직접 찾으셔도 됩니다..   빨간색으로 표시된 프로젝트를 찾으세요. 그리고 Next를 눌러요

 

 

산넘어 산이라고 뭐가 또 많이 나오네요

이럴땐 이해하는 단어만 이해하는 겁니다. 

프로젝트 이름이 있네요.. 네 이름 지정하는 것입니다.. 나의 이름은~~ 뭐 이런거죠

단순한 이름으로 해 보죠

본인거랑 틀린 그림을 찾아서 그곳에 입력하시면 됩니다. 

동그라미 친 곳의 Module version 2.3로 기억하시고 그냥 기억만 하세요.

Group ID, Artifact ID는 좀 보고 갈께요

Group ID는 회사의 도메인을 거꾸로 쓰는 경우가 많습니다.    도메인은 그냥 주소입니다.. http://www.abc.com 여기서 abc.com을 도메인이라고 하죠. 이것을 거꾸로 씁니다..

 Artifact ID 프로젝트의 이름으로 작성하죠.

두개의 정보를 보면 어떤회사의 어떤 프로젝트로 구별이 가능하죠? 이렇게 하고 Next를 누릅니다.

 

 

이제 샘플 코드를 선택할 수 있는데 

선택합니다.

선택하지 않을 경우는 뼈대는 있지만 아무것도 없는 즉, 사람이 살지 않는 집이고요

샘플 코드를 선택하면 가구등이 배치 되어 있는 올인원 셋팅 되어 있는 집입니다.

 

익숙하신 분은 체크 안해도 되지만

공부가 목적이면 체크해서 구조를 살펴 보는 것을 권장합니다.  

 

이제 Finish를 눌러요. 뭔가 창이 뜨면 No 누르세요

 

 

자 이제 프레임워크, 뼈대를 만들었어요.

다음 화면에 표시한 부분을 먼저 확인 합니다..

맨위는  package Explorer 인데 이것는 프로젝트를 탐색하는 메뉴입니다.

프로젝트를 탐색하는 것은 Project Explorer도 있는데 .. 전 package Explorer을 더 좋아합니다.

Window > Show View에서 찾으시면 되는데, 없다면 other를 클릭하셔서 검색으로 찾아 보시면 됩니다. 

KimtrCafe 프로젝트를 다음과 같이 클릭해 보세요

프레임워크는 뼈대를 만드는 겁니다.

이렇게 뼈대가 만들어져 있습니다.

이렇게 뼈대를 만들어져 놓고 개발자는 필요한 개발 소스를 폴더 위치에 맞게 작성합니다.

그러면 프레임워크는 자기가 알아서 운영해 줍니다.. 이런 의미가 개발의 주도가 소프트웨어라는 의미~~

아래 폴더의 의미를 이해하려면 우린 MVC패턴을 이해하면 쉽게 이해할 수 있어요

그러니 아직은 그냥 이런 폴더가 있구나 라고 기억하세요. 

자 이제 실행해 봅니다.

 

프로젝트 마우스 우클릭 > Run AS > Run on server 를 선택하여서 프로젝트를 실행합니다.

이때 뭔가 메뉴가 안나온다면

첫째 , tomcat서버 설치 확인.. 전 글에 있어요

 

 

실행하는 동안 아래 그림처럼 Console을 보세요

글씨 잘 올라 가죠.

이때 왼쪽 빨간색 라인에서 들여쓰기가 된 글자 나온다면 에러 입니다. 

콘솔화면은 에러난 것을 고치는 것(디버깅작업)에 아주 중요한 단서를 제공합니다. 

꼭 꼭 실행하고 콘솔창부터 보세요.. 글씨 다 안읽어도 됩니다.

들여쓰기 된 것이 나오면 그때 보셔도 됩니다

 

 

 

정상적으로 실행된다면 웹 브라우저에 다음과 같이 화면이 나옵니다.

이때 주소창을 보면 프로젝트 이름까지만 남기고 뒤는 지워 버려요..

주소를 분석하면 좋은데... 해 보죠

locahost는 서버의 주소

9980은 포트의 주소

KimtrCafe는 프레임워크에서는 프로젝트명이지만, 여기서는 컨텍스트패스라고 불리웁니다.

서버를 좀 이해하셔야 합니다.  그 흐름은 나중에 한 번 잡아 보죠.

그냥 서버가 이해하는 프로젝트라고 생각하시고, 정부전자프레임워크의 프로젝트랑 연결되어 있다. 

 

아까 샘플코를 선택해서 아래와 같이 샘플로 만든 게시판이 나옵니다. 

이렇게 하면 프로젝트  까지 생성하고 실행까지 성공한 것입니다 

 

팁, 웹브라우저를 크롬으로 바꾸고 싶다면 아래와 같이 하세요

웹브라우저는 클라이언트가 서버에게 서비스를 요청하고, 서버의 응답을 보여주는 프로그램입니다.

네이버 생각해 보시면 클라이언트가 네이버주소창에주소를 적는 것이 요청

그 뒤에는 화면이 바뀌고 그것은 네이버가 응답해 준 화면입니다.

네이버응답을 클라이언트가 볼 수 있게 다시 보여주죠 이런 역활을 하는게 웹브라우저입니다.

이렇게 시작하여서 깊게 공부하는 것입니다. 일단 이해하시고

클라이언트는 서비스를 이용하는 것. 서버는 서비스를 제공해 주는 것입니다.