개발시에 버전이 중요하다.
https://www.oracle.com/kr/java/technologies/downloads/
*** 개발환경설치
1. JDK 8 :
C:\Program Files\Java\jdk1.8.0_91
내PC - 속성 - 고급 시스템 설정-고급 - 시스템변수(S) - Path - 'C:\Program Files\Java\jdk1.8.0_91' - 위로 이동
path = %JAVA_HOME%\bin
새 시스템 변수
변수이름: JAVA_HOME
변수값: C:\Program Files\Java\jdk1.8.0_91
---------------------------------------------------------------------------------------------
2. WAS(Tomcat8.5)
WAS_HOME
C:\apache-tomcat-8.5.63
WEB APPLICATION
C:\apache-tomcat-8.5.63\webapps
C:\apache-tomcat-8.5.63\webapps\docs\WEB-INF\web.xml => 환경설정파일(시작할 때 read)
(툴) 이클립스, 인텔리제이
http://localhost:8080/edu/test01.html
http://127.0.0.1
---------------------------------------------------------------------------------------------
*** 서블릿: 웹에서 요청해서 실행할 수 있는 유일한 자바 프로그램
*** 서블릿 필요 조건
1. 반드시 javax.servlet.http.HttpServlet 상속해야 한다.
https://docs.oracle.com/javaee/7/api/index.html?javax/servlet/package-summary.html
javax.servlet
javax.servlet.http
2. 서블릿 경로
2-1. web.xml
2-2. @
http://localhost:8080/edu/servlet/com.edu.test.FirstServlet
http://localhost:8080/edu/exam01
---------------------------------------------------------------------------------------------
************************************************************************************************
*** (중요함) 저장소(scope이라는 단어가 나오면 3개 중에 1개) : 3개 중 1개에서 저장함
1. ServletContext
- 서버 시작시 생성
- 서버 종료시 삭제
- web aplication 개수 단위로 생성됨
1.2. ServletContext 기능
가. application 단위로 데이터 공유
나. application 변수 사용할 때
=> [중요함] 페이지 이동시 이전 페이지의 request, response 그대로 받아 사용하는 경우
RequestDispatcher HttpServletRequest.getRequestDispatcher(path)
RequestDispatcher.forward(req, resp) 이동했다가 다시 안돌아 온다.
.include(req, resp) 이동했다가 다시 돌아 온다.
=> [중요함, null point exception] 페이지 이동시 새로운 request, reponse 생성
HttpServletResponse.sendRedirect(path)
2. HttpSession(로그인/아웃, 장바구니)
- client 접속시 생성됨
- client 종료시 종료됨
- client 당 1개로
3. HttpServletRequest
- 요청시 생성
- 응답완료시 삭제
- 요청이 들어올 때마다 생성됨
************************************************************************************************
저장: setAttribute(String name, Object value)
추출: Object getAttribute(String name)
삭제: removeAttribute(String name)
---------------------------------------------------------------------------------------------
http://localhost:8080/edu/test01
http://localhost:8080/edu/test02
test01
test02
'개발 및 관리 > Java' 카테고리의 다른 글
스프링프레임워크 기본 단어 및 개념 (0) | 2023.11.28 |
---|---|
스프링, mybatis, oracle 등 연결 (0) | 2022.04.03 |
JAVA FULL STACK 기본 역량 및 수준별 프로젝트 (0) | 2022.03.12 |
자바 개발자라면 반드시 봐야 할 책 (0) | 2022.03.12 |
spring Oracle과 mybatis 연동 실습 (0) | 2022.01.28 |