JSP 공부 사이트 - JSP gongbu saiteu

웹 서버를 구현하기 위해서는 개발환경에 필요한 저작도구를 파악해야한다.
즉 어떤 프로그램으로 만들어야할까? 고민해봐야하는 것이다.

문서작성 - 한글, 워드, pages, ppt
디자인 - photoshop, illustrator

이런 식으로 내가 쓸 도구를 선택해야한다.

UI개발을 위해선 JSP, PHP, ASP가 있다.
학원에서 배울 때는 PHP를 사용한다.

하지만 나머지에 대한 지식도 필요하기 때문에 정리해보았다.


백엔드 개발을 위한 언어는 PHP, ASP, JSP 등이 있다.
PHP, ASP, JSP를 Sever Side Language라고 한다.
(파이썬, 루비 등 Sever Side Language는 다양하다.)
어떤 언어로 개발하느냐에 따라 준비해야하는 것이 달라진다.
즉, 그 언어에 맞는 개발환경을 만들어 줘야한다는 것이다.


간단한 표로 PHP, ASP, JSP에 대해 정리해보았다.

JSP 공부 사이트 - JSP gongbu saiteu

JSP

= Java Server Pages

  • Java 기반으로 한 서버 사이드 언어
  • 객체지향적 특성을 가지고 있어서 처음 배우는데에 진입장벽이 있음
  • 대형 프로젝트 -> 엄청 큰 규모의 사이트와 어울리는 언어 (금융권, 대기업 웹 사이트 및 내부시스템 개발에 많이 쓰임)
  • 안정적으로 유지보수가 가능
  • 개발비용(인건비, 시스템 비용, 유지보수비용)이 많이 들고, 개발 소요시간도 오래 걸린다.
  • 속도도 이 셋 중에 제일 느리다.
  • 사용하는 데이터베이스는 오라클인데, 오라클 역시 규모가 가장 큰 데이터베이스

PHP

= Hypertext PreProcessor

  • 오픈소스로 제공되는 명령형, 객체지향형 언어
  • 소규모 웹 사이트에 사용하기 좋은 언어
  • 설치와 배우기가 쉬움
  • AMP(Apache + MySql + Php)라 하여 웹서버, DBMS, 웹 기술 환경을 저렴하게 구축 가능
  • 개발환경이 부족하고, 보안이 취약

ASP

= Active Server Pages

  • 광범위하게 사용되고, 주로 중-대규모의 인터넷서비스에 많이 사용됨(관공서 사이트들)
  • 유료고, 비용이 가장 많이 들어감
  • Window 운영 체제에서 구현됨
  • Microsoft IIS 서버를 지원
  • 개발 환경이 편하고, 뛰어남
  • 웹 서버가 마이크로소프트사의 제품에 의존
  • MS-SQL은 성능이 좋은 DBMS이긴 하나 비쌈

한국에서는 JSP의 수요가 크다고 한다.
하지만 수업시간에서는 PHP를 사용하기로 했으므로 이 이후에는 PHP에 대해서 더 찾아봐야겠다.
또 검색해보니 서버 사이드 언어로 파이썬이라는 언어도 있었다. 파이썬과 프레임워크를 쓰면 더 쉽게 할 수 있다는 글도 있었던 것 같다. 아직 기초 단계라서 뜻을 다 이해할 수는 없었지만... 파이썬과 그 프레임워크에 대해서 찾아봐야겠다.

총 정리

http://tcpschool.com/jquery/jq_elementSelection_jqSelector (예제로 코딩도 가능)

https://www.w3schools.com/ (유명한 곳)

https://www.inflearn.com/ (공부 처음 시작 할 때 도움이 많이 되었던 곳)

JavaScript

https://developer.mozilla.org/ko/docs/Web/JavaScript/%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0

SVN (실무에서 사용할 일이 많으니 꼭 알아두자)

http://mobilegen.tistory.com/18

http://hotcoffee.tistory.com/entry/Tortoise-SVN-%EC%84%A4%EC%B9%98-%EB%B0%8F-%EA%B8%B0%EB%B3%B8%EC%82%AC%EC%9A%A9%EB%B2%95

JAVA

https://opentutorials.org/course/1 (생활코딩)

SQL

https://www.w3schools.com/sql/default.asp (쿼리 공부하기 좋은 사이트)

안녕하세요.

컴퓨터교육의 모든것을 다루는 에듀밍코리아 입니다.

우리는 정보화 사회 속에서 수많은 정보들을 접하고 활용하며 살아가고 있습니다.

그리고 컴퓨터는, 이러한 수많은 정보들을 다양한 방법으로 유용하게 처리해주는데요.

컴퓨터는 우리가 상상할 수도 없을 만큼 수많은 기능을 가지고 다양한 역할들을 수행하고 있습니다.

특히 우리는 컴퓨터의 웹사이트를 이용해 수많은 정보들을 검색하고 유용한 정보를 얻을 수 있는데요.

대부분의 사람들이 매일같이 웹사이트를 들어갔다 나옵니다.

그리고 PHP와 JSP는 모두 웹사이트를 개발하는 데 필요한 언어 및 도구인데요.

PHP는 웹언어로 웹사이트를 개발하는 데 사용이 되고, JSP는 JAVA를 이용해 HTML을 개발하는 데 사용됩니다.

이에 PHP, JSP 모두 컴퓨터 전공 학과 및 직업에서 매우 각광받고 있는데요.

많은 사람들이 관심을 가지고 배우고 싶어 합니다.

하지만 혼자 PHP, JSP를 공부하는 데에는 어려움이 따를 수 있는데요.

이에 도움을 줄 수 있는 곳이 있습니다.

바로 에듀밍 코리아인데요.

에듀밍 코리아에서는 능력 있는 컴퓨터 전문 강사와 학습자 간의 일대일 맞춤 컴퓨터 수업을 장려하고 있습니다.

전문 강사는 학습자의 수업 목표 및 능력에 따라 짠 수업 커리큘럼대로, 학습자를 효율적으로 관리해줄 수 있는데요.

전문 강사로부터 집중적인 학습 관리를 받은 학습자는, 원활하게 자신의 학습 목표를 달성할 수 있습니다.

또한 개인 과외이기 때문에 학습자는 자신의 편의에 맞춰 시간 및 장소 등을 조율할 수 있는데요.

에듀밍 코리아에서는 학습자에게 테스트 시스템 역시 제공하고 있습니다.

학습자는 전문 강사와의 테스트 시스템을 통해, 원하는 전문 강사와의 수업을 찾아 원활하게 수업을 진행할 수 있는데요.

또한 에듀밍 코리아에서는 항상 학습자 입장을 먼저 생각하고 최대한 합리적인 비용으로 맞춰드리고 있습니다.

PHP, JSP 등의 컴퓨터 수업에 관심이 있으신 분들은 편하게 에듀밍 코리아로 문의주세요.

포토샵, 캐드 CAD, 파워포인트 등의 다양한 컴퓨터 수업도 준비되어 있습니다.

그리고 일대일 맞춤 수업뿐만 아니라 다양한 형태의 수업도 진행하고 있으니 궁금하신 부분은 문의주세요.

hyungmuk's blog

개발 & 공부/JSP

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

hyungmuk 2019. 8. 6. 11:51

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

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

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

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

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

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

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

JSP 공부 사이트 - JSP gongbu saiteu
인프런 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 코딩을 해 볼 수 있도록 도움을 주신 안경잡이개발자(나동빈)님에게 감사의 말을 전하고 싶습니다.