개발 & 공부/JSP

인프런 JSP 강의평가 웹사이트 개발하기 수강 후기

hyungmuk 2019. 8. 6. 11:51

필자는 2년 전에 학원에서 Java를 배운 적이 있다. 그리고 최근에는 대학교 교과목으로 Java를 공부했다.

하지만 그동안은 웹 프론트엔드 개발자로 일해왔으므로 Java를 제대로 활용해 본 일이 없다.

다양한 언어를 추구하는 나로서 언젠가는 제대로 한번 공부해봐야겠다고 생각했지만, 시간도 나지 않았고 귀찮음 때문에 미루고 있었는데, 당분간은 시간이 있을 거 같아서, Java를 제대로 공부하기로 마음먹었다.

단, Java로 응용프로그램이나 모바일 어플리케이션 같은 걸 만들겠다는 건 아니고, 그동안 웹 프론트엔드 개발자로 일했던 전적이 있으니, 웹 백엔드 개발에 도전해보려고 한다.

계획은 대학교 교과목에 JSP 과정이 있으니 교과목으로 JSP를 공부하면서 인터넷 강의로 웹사이트 만드는 것을 따라 해보면서 공부한 후, Java 기반 MVC 웹 프레임워크인스프링(스프링 부트 포함) 공부하는 것이다.

 

 

우선 패스트캠퍼스나 인프런에서 공부해야 할 강의를 찾아보았다.

패스트캠퍼스에는 JSP는 없고 스프링 강의만 있었기 때문에 패스하였고, 인프런에서는 아래처럼 총 4개의 강의가 검색되었다.  

인프런 JSP강의 목록 (2019년 8월 6일 기준)

  • 실전 JSP(renew ver.) - 신입 프로그래머를 위한 강좌 (3,300원)
  • 누구나 따라하면서 배우는 JSP 커뮤니티 게시판 만들기 (무료)
  • 신입 프로그래머를 위한 실전 JSP 강좌 (무료)
  • JSP 강의평가 웹 사이트 개발하기 (무료)

실전 JSP(renew ver.) - 신입 프로그래머를 위한 강좌는 신입 프로그래머를 위한 실전 JSP 강좌의 리뉴얼 강좌이고, 그 이전 버전인 신입 프로그래머를 위한 실전 JSP 강좌는JSP의 기본 문법과 사용법을 배우는 데 도움이 되는 강좌인듯하였다.


그다음에 누구나 따라 하면서 배우는 JSP 커뮤니티 게시판 만들기와 JSP 실전 평가 웹 사이트 개발하기는 안경잡이 개발자님의 강의로써 한 가지의 프로젝트를 따라 만들어 볼 수 있게 해주는 강의로 보였다.

무엇을 먼저 봐야 할지 고민을 하다가 JSP 문법은 학교에서도 배워야 하기에 금방 질려질 거 같아서 JSP 강의평가 웹 사이트 개발하기를 처음 볼 강의로 선택하였다.

 


 

 

JSP 강의평가 웹 사이트 개발하기 - 인프런

고등학교/대학교를 막론하고 어디에서도 적용될 수 있는 강의평가 웹 사이트를 개발하는 방법에 대해서 알려드리고자 합니다. 입문 웹 개발 프레임워크 및 라이브러리 Java JSP 온라인 강의

www.inflearn.com

 

JSP 강의평가 웹 사이트 개발하기 강의의 목차는 다음과 같다.

 

  1. 강의 소개 및 강사 소개 (17분)
  2. JSP 개발환경 구축 및 테스트 (18분)
  3. MySQL과 JSP 연동 및 실습 (25분)
  4. 프레임워크로 웹 디자인 틀 잡기 (17분)
  5. 강의평가 메인화면 웹 디자인 (23분)
  6. 로그인 및 로그아웃 화면 디자인 (4분)
  7. 강의평가 데이터베이스 구축하기 (8분)
  8. 회원 데이터 모델링 (4분)
  9. 회원가입 및 이메일 인증(31분)
  10. 로그인 및 로그아웃 (11분)
  11. 강의평가 등록 기능 (14분)
  12. 관리자에게 신고 기능 (4분)
  13. 미니 검색 엔진 (21분)
  14. 강의 추천 및 삭제 (16분)
  15. XSS 방어 및 프로젝트 완성 (7분)

총 15강으로 구성되어 있으며, 총 강의 시간은 220분 이다. (평균 15분)

 

1강은 강사 소개와 완성된 웹사이트를 소개한다.

2강은 JDK, 이클립스(Eclipse), 톰캣(Tomcat) 설치 등을 알려주는 파트이다. 

 

본격적인 코딩 실습은 3강부터 시작된다. 
4강부터 6강까지는 부트스트랩을 가지고 화면을 퍼블리싱 하는 것을 보여준다.
7강은 데이터베이스와 관련된 내용으로 필요한 테이블을 생성하는 것을 보여준다.
8강부터 14강까지는 DTO와 DAO 그리고Action 페이지 들을 만들어 보면 실질적인 JSP 코딩을 진행한다.
마지막 강좌인 15강에서는 XSS의 위험성을 보여주고 간단하게 XSS를 방어할 수 있는 방법을 알려준다.

 

이 강의의 특징은 이러하다.

  • 강사가 강의를 빠르게 진행하여, 쉴 틈이 없고 지루하지 않다.
  • 강의 속도는 빠르지만 정확하게 알려주기 때문에 중간에 헷갈리는 경우가 별로 없다. 
  • 강사의 목소리와 발음이 좋아서 강사가 말하는 것이 귀에 속속 들어온다.
  • 라이브 코딩처럼 진행되지만 영상편집이 잘되어있어 런타임이 짧다.
  • 쉴 틈 없는 강의로 따라 하다 보면 놓칠 때가 많아서 뒤로 돌려 보는 경우가 많아지게 된다.
  • 설명을 간단하게만 해주기 때문에 더 궁금한 것이 있을 경우, 궁금증을 가지고 들어야 하는 답답함이 생길 수 있다.

이러한 특징들로 인해 지루하지 않고 코딩을 따라쳐보며 재밌게 수강할 수 있었으며, 자세한 설명이 생략되어 DTO, DAO 같은 것들이 이 강의 실습에서 자주 사용되지만 처음에는 제대로 알지 못했다가 실습을 하면서 자주 만들고 사용해 봄으로써 시간이 지나게 되니 점차 알게 되었다. 

 


 

 

실습 중에 이슈가 하나 있었다.

An error occurred at line: [15] in the generated java file: [경로 생략\userJoinAction_jsp.java]
Only a type can be imported. user.UserDao resolves to a package

실습 중에 위와 같은 오류가 생겨 몇 시간 동안 오류 원인을 찾아야 했었다.

결국에 구글링으로 해결 방법을 찾아 해결하였다.

https://okky.kr/article/517005 이 글의 작성자와 같은 오류였고, 제시되어있는 해결 방법을 통해 해결하였다. 

이클립스에서  상단 메뉴 project - clean을 하니 문제가 해결되었다. 

아직도 위 오류에 대한 이유는 모르겠지만, project - clean은 알아두니 종종 사용을 하게 되었다.

이것 밖에는 큰 어려움은 없었다.

 


 

나는 이 강의를 보고 실습하면서 클래스 변수 네이밍 등 거의 모든 것을 그대로 따라 만들었다. 

그러다 보니 DTO, DAO 생성과 사용 패턴을 자연스럽게 익힐 수 있었고, 카멜표기법(Camel Case) 방식으로 네이밍 하는 것에 적응이 되었다. MYSQL을 사용하는 데 있어서는 아주 기본적인 SQL만 습득할 수 있었다.

그리고 의외의 일이지만, 강사의 타이핑 속도를 따라가려고 하다 보니 타자 속도가 빨라진 것 같다.

 

끝으로 이렇게 좋은 강의를 무료로 공개해 주시고, 조금이나마 JSP 코딩을 해 볼 수 있도록 도움을 주신 안경잡이개발자(나동빈)님에게 감사의 말을 전하고 싶습니다.