Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

으나님의 잡다한 개발상식

[Spring] 게시판 만들기_1. 프로젝트 생성 본문

Spring

[Spring] 게시판 만들기_1. 프로젝트 생성

스위트치즈 2020. 7. 10. 21:00

학원에 다니면서 Spring프로젝트를 진행해보았지만 한번 더 Spring을 제대로 정리하고 싶었다.

가장 기초부터 쌓기 좋은 게시판 만들기를 진행해 볼 예정이다.

학원에서 스프링 프로젝트를 진행하면서 가장 아쉬웠던 점은 기능을 구현하는 데 집중한 나머지 코드의 가독성이 떨어지고 효율적이지 못한 코드를 짰다는 점이었다.

적어도 내가 맡은 분량은 어떻게든 해야 팀원들에게 해가 되지 않았기에 어떻게든 구현하는 데 초점을 맞추었는데

이번에는 혼자서 게시판을 만들어보면서 구현보다는 더 좋은 코드를 짜는 학습을 하는 데 초점을 맞추어보고자 했다.

 

그리고 스프링 프로젝트를 진행하면서 인터넷의 도움을 정말 많이 받았는데,

지금부터 작성할 글들이 다른 분들에게 도움이 되었으면 한다.

 

 

왜 스프링 게시판을 다시 만들어보는지, 어떻게 만들건지에 대해서는 아래 링크를 참고하였다.

https://okky.kr/article/663519

 

OKKY | 취직 준비를 위해 좋은 포트폴리오 만드는 방법

제목이 거창 한 것 같기는 하지만, 구인을 하기위해 이력서를 보거나 면접을 볼때 이런 구직자라면 “정말 뽑고 싶다” 하는 마음가짐으로 적어 봅니다. 회사의 규모에 관계없이 좋은 회사를 구

okky.kr

 

이대로 다 하면 고급 인력이라는 댓글도 있지만(;;) 전부는 아니더라도 최대한 위 글에서 말하는 기준에 맞추어서 개발을 진행해보려고 한다.

 

혼자서 하는 프로젝트지만 컨셉도 정하고 요구사항분석서랑 화면기획서도 써보려고 했으나...

처음 단계에서 너무 쳐질 것 같아 그 부분은 스킵하고 정말 게시판을 구현하는 데 초점을 맞춰서 작업하려고 한다.

일단 백엔드에 집중한 게시판을 만들고, 로그인 기능까지 만든 후에 리액트 등 프론트엔드 프레임워크를 적용해볼 생각이다.

 

 

먼저 개발환경은 다음과 같다.

1) Back-End

- Language : JAVA JDK 1.8

- Frame Work : Spring 5.2.7, mybatis

- Server : Apache Tomcat 9.0

- IDE : STS 3(Eclipse)

- Database : Oracle DB

 

2) Front-End

Language : Javascript, HTML5, CSS3

 

 

책은 <자바 웹을 다루는 기술>, <코드로 배우는 스프링 웹 프로젝트 개정판>을 참고할 예정이다.

스프링은 현재 최신 버전이 5.2.7버전이다.

<코드로 배우는 스프링 웹 프로젝트 개정판> 책에서도 스프링 5.x버전으로 설명되어 있어서

같은 5.x버전이면서 최신 버전인 5.2.7버전을 이용해볼 생각이다.

스프링 5.x 버전은 최소 java 8 버전(jdk 1.8버전) 이상을 요구하고 있다.

 

※ jdk 1.8을 쓰는 이유?

구글링을 하거나 카페 검색을 해보면 2020년 7월 현재 java SE 14까지 나왔음에도 불구하고 jdk 1.8버전을 많이 사용하는 것 같았다. 더 높은 버전을 사용할 수도 있지만 1.8을 사용하는 이유는 자바 버전 업그레이드에 따른 기존 코드 및 라이브러리에 대한 호환성이 담보되지 않는다는 의견이 있었다.

 

 

※ 알아보면서 java 버전, jdk, Java SE가 너무 헷갈렸다 ㅠㅠ 그래서 따로 다시 정리해보았다!

https://sweeteuna.tistory.com/109

 

[JAVA] JAVA SE/JDK/JRE에 대해서

스프링을 배우다보니 내가 자바 기초개념부터 모르는 게 많다는 생각이 들었다.. 스프링 5.x 버전은 최소 자바 8버전을 사용해야한다는데, 자바 8 버전은 뭐지? 싶었던 거다...ㅠㅠ 그리고 java se는

sweeteuna.tistory.com

 

 


먼저 STS에서 Maven을 사용하는 스프링 프로젝트를 생성하는 방법이다.

File>New>Spring Legacy Project(바로 보이지 않으면 Other... 을 클릭하여 찾으면 된다)

 

그리고 Spring MVC Project를 선택한다. 나는 프로젝트 명을 그냥 'SpringProject'라고 했다.

 

다음으로 넘어가면 패키지명을 지정하는 화면이다.

나는 'com.euna.board'로 이름을 붙였다.

 

그냥 이렇게 붙인 것은 아니고 이참에 나도 궁금해져서 패키지명을 붙이는 규칙에 대해 찾아봤다.

보통 요렇게 붙인다고 한다.

최상위도메인/나라코드 . 회사명/팀명 . 프로젝트/프로그램명

예를 들면 com.naver.npay 이런 식으로 말이다.

그리고 명칭은 소문자로 작성하는 게 좋다고 한다.

게시판 모듈은 com.euna.board 아래에 둘 거고, 로그인 모듈은 추후에 com.euna.login으로 새로 만들 것이다.

또한 MVC패턴을 적용할 거기 때문에 게시판과 관련된 controller 파일은 com.euna.board.controller 안에,

service 파일은 com.euna.board.service 안에, dao 파일은 com.euna.board.dao 안에 만들 것이다.

 

 

아래는 패키지명 명명규칙에 대해 잘 정리된 블로그 글들이다.

https://bvc12.tistory.com/339

 

패키지명 명명(Naming) 규칙

  패키지명 명명(Naming) 규칙 프로젝트를 진행하려고 하면 항상 고민하는것이 패키지명 네이밍입니다.  자바, 안드로이드 등 개발을 시작하려면 우선 패키지를 만들어 작성하는대.. 처음 작성��

bvc12.tistory.com

 

https://m.blog.naver.com/khsmonad/221678874765

 

[Spring] 폴더(패키지) 명을 어떻게 정할까?

Spring 작업을 하다 보면 각 조직 마다 MVC 패키지명을 다르게 사용하는 경우가 있습니다. 어떤 것이 ...

blog.naver.com

 

 

그럼 이제 아래와 같이 스프링 프로젝트가 만들어진다.

코드로 배우는 스프링 웹 프로젝트 개정판 33p 참고

 

 

 

(!!!!!!!!!!)
이 글의 글쓴이는 초보 개발자로 글 내용이 부족하거나 오류가 있을 수 있습니다.
부족한 점이나 오류가 있다면 댓글로 알려주시면 감사하겠습니다 :)

저뿐만 아니라 혹시나 이 글을 보게 될 다른 초보 개발자 분들에게도 도움이 될 것입니다!

또한, 의견이 있으시거나, 글 내용이 유익했다면 댓글을 남겨주시면 감사하겠습니다.

즐코하세여~

'Spring' 카테고리의 다른 글

[Spring] 게시판 만들기_2. 개발환경 세팅  (1) 2020.07.11
[Spring] Maven? 빌드 도구란?  (0) 2020.07.11