JSP 스프링 1강 - 웹어플리케이션 / 프로그래밍 기초

Whatever·2021년 12월 30일
0

JSP

목록 보기
1/30

1. 웹 어플리케이션 기초

jsp - java servlet page
spring

js => 웹에 특화됨

스프링을 사용하게 된 이유:
진정한 자바로 돌아가자, 자바의 본질을 사용하자
개발자는 개발만 하게 하도록
싱글톤 -> 스프링이 알아서 해줌
싱글톤 패턴 injection 서비스명 -> 알아서만듦

자바의 본질만 알면 @어노테이션 해서 사용가능
인젝션
page include 사용
tiles

인터넷 = 웹
같으면서 다름

인터넷 - (TCP/IP로 정보를 주고받는 전세계 네트워크)
웹 - 인터넷에 연결된 컴퓨터들을 통해 파일을 공유할 수 있는 정보공간

인터넷은 네트워크, 웹은 정보공간(망)

웹의 동작원리
클라이언트(웹 브라우저 - 크롬)와 서버(톰캣, 네이버,다음 등) 사이의 요청과 응답

주소를 만들면 서버(톰캣)에서 html로 렌더링을 한다.

정적 웹페이지와 동적 웹페이지

정적 웹페이지 : 컴퓨터에 저장된 텍스트 파일을 그대로 보는것(HTML)
1.클라이언트가 웹페이지를 요청
2.이미 준비된 html문서를 그대로 렌더링해서 전달

동적 웹페이지 : 저장된 내용을 다른 변수로 가공처리하여 보는것
(JSP, PHP(Person), ASP)
1.클라이언트가 웹페이지를 요청
2.웹서버가 요청을 분석하여 처리
3.결과를 HTML 문서로 생성
4.요청에 맞게 정제된 HTML 문서를 전달

JSP 생명주기

로딩: 메모리에 올린다
소멸: 메모리에서 내린다
클래스 안에서 처리를 하고 HTML 문서가 만들어짐

JAVA를 이용하여 웹사이트를 만들 때 사용하는 다양한 기술

  • 개발언어 : JAVA
  • 웹/어플리케이션 서버 : HTTPD(아파치 웹 서버)나 NGINX, Tomcat 등
  • 서버 웹 기술: JSP와 Servlet
  • 서버 웹 기술을 위한 프레임워크 : Spring MVC
  • 클라이언트 웹 기술 : HTML, JavaScript
  • 클라이언트 웹 기술을 위한 프레임워크나 라이브러리 : jQuery, 앵귤러JS등
  • 데이터베이스 연동 : JDBC, MyBatis, JPA
  • DBMS : MySQL, MS SQL, Oracle
  • 통신 프로토콜 : HTTP
  • OS : CentOS, Window SerVer 2021 등

프레임워크 = 디자인패턴 + 라이브러리
디자인패턴 = 약속(모든 요청(request)은 servlet으로 온다)
servlet -> service -> dao -> xml -> DB

이런 약속을 가지는 이유 : 다형성

DB : 개념 1.공유 2.통합 3.저장 4.운영

DBMS : 시스템

실습환경 :

  • JDK 8 : 자바 개발 도구로써 Complie하고 Tomcat을 실행할 때 사용
  • Tomcat8 : JSP를 실행하기 위한 Web Container (Web서버 + 서블릿)
  • Oracle : DBMS
  • Eclipse : 통합 개발 환경으로 Java에서 널리 사용
  • IntelliJ : Eclipse와 유사함

URL : (Uniform Resource Locator)
: 웹 브라웆저의 주소줄에 표시되는 것
URI : URL + 기능

http:// www.11st.co.kr / products/1209182320 ?trTypeCd=22&trCtgrNo
프로토콜 서버이름 경로 쿼리문자열

URL의 주요 구성요소

  • 프로토콜
  • 서버이름
  • 경로
  • Query문자열

웹 컨테이너

  • 웹 어플리케이션을 실행할 수 있는 컨테이너
  • JSP와 서블릿을 실행해줌

웹 콘테이너 - JSP, 서블릿

  • 주요 웹 컨테이너
    톰캣(Tomcat)
    제티(Jetty)

JSP를 사용하는 이유

  • 자바 언어에 기반하기 때문에 플랫폼에 독립적
    (리눅스 등 운영체제에 상관없이 동작)
  • 자바 언어에 대한 깊은 이해 없이도 초기 학습 가능
    (스크립트 언어는 상대적으로 자바 언어보다 단순)
  • 스프링이나 스트러츠(Struts)와 같은 프레임워크와 완벽하게 연동

스프링 - 프레임워크 = 디자인패턴 + 라이브러리

JSP 생성주기
번역 -> 컴파일 -> 로딩 및 초기화 -> 실행 -> 소멸

2. 웹 프로그래밍 기초

404, 500 오류일 시 어디로 갈건지 web.xml에 처리

용어

<%@ %> : 디렉티브
<%! %> : 선언부
<%= %> : 표현식
<% %> : 스크립트릿

프로젝트가 어플리케이션이 됨

JRE
web.xml의 역할 - 톰캣의 환경설정
(오류났을 때 어느 페이지로 가라, 파일 업로드할 때)

WEB-INF : JDBC, jsp 파일들 업로드

0개의 댓글