본문 바로가기

JSP Servlet10

JSP Servlet Maven JSP Servlet Maven 1. Maven Apache 사에서 만든 빌드 툴(build tool) bulid : 프로젝트를 위해 작성한 코드나 여러 자원을 jvm이나 was가 인식 가능 구조로 패키징 하는 과정, 컴파일 뿐만 아니라 테스팅 및 배포까지 일련의 작업을 포함 Maven 필요 이유 각 팀원이 똑같은 개발을 하기 위해서는 같은 버전의 파일을 사용해야 한다. pom.xml 파일을 통해 정형화된 빌드 시스템으로 프로젝트를 관리 라이브러리 관리가 용이, 정해진 빌드 방법을 사용해 협업에 유리, 다양한 플러그인을 통해 많은 작업이 자동화 2. Maven 설치 Group Id 설정 후 설치 시작 → y 누르기 3. Maven 설정 JRE System Library, MavenDependencies .. 2023. 2. 13.
JSP Servlet Web_MVC JSP Servlet Web_MVC 1. 디자인 패턴 (Design Pattern) 소프트웨어 설계에 있어 공통된 문제들에 대한 표준적인 해결책 2. MVC 시각적으로 보여지는 부분과 데이터를 처리하는 부분을 분리하여 유연한 구조를 설계 Model : 어플리케이션의 정보, 데이터 (실행에 직접적 관여하지 않음) View : 사용자가 보게 될 결과 화면 출력 Controller : 사용자의 입력처리와 흐름제어 담당 (어플리케이션의 행위 정의) 3. Model 1, Model 2 비교 Model1 : JSP에서 출력과 로직을 전부 컨트롤 Model2 : JSP에서는 출력만 처리 (View와 Controller를 명확하게 분리) ※ Model1 ※ Model2 Model1 Model2 View와 Control.. 2023. 2. 13.
JSP Servlet Scope JSP Servlet Scope Scope JSP 페이지에서 사용되는 객체들은 JSP 내장 객체이든, 페이지 내에서 만들어졌건 간에 모두 정해진 영역 안에서만 사용 가능 1. PageScope 저장된 값은 저장한 페이지에서 지역변수로 사용 해당 JSP나 Servlet이 실행되는 동안에만 정보를 유지하고자 할 때 사용 값 저장, 불러오기 pageContext.setAttribute(name(String), value(Object)); pageContext.getAttribute(name(String)); EL 표기법 ${pageScope.name}; ${name} 2. Request Scope 클라이언트로부터 요청을 받고 응답할 때까지 사용 가능 HttpServletRequest 객체로 사용 가능 serv.. 2023. 2. 8.
JSP Servlet 쿠키, 세션 (Cookie, Session) JSP Servlet 쿠키, 세션 (Cookie, Session) 1. 쿠키와 세션의 필요성 HTTP 특징 connectionless(비연결성) : 클라이언트가 요청을 한 후 응답을 받으면 그 연결을 끊어버리는 특징 stateless(무상태) : 통신이 끝나면 상태를 유지하지 않는 특징 쿠키와 세션을 사용해 사용자의 상태를 유지할 수 있음 2. 쿠키 (Cookie) 클라이언트(브라우저)에 저장되는 키와 값이 들어있는 작은 데이터 파일 쿠키 동작 방식 쿠키 사용 예시 ① ID 저장, 로그인 상태 유지 ② 일주일간 다시 보지 않기 ③ 쇼핑몰 장바구니 기능 쿠키 단점 ① 보안에 취약 ② 작은 허용 용량 ③ 브라우저를 변경할 경우 다른 브라우저에게 저장한 쿠키 값을 사용할 수 없음 3. 쿠키 생성, 전달, 확인.. 2023. 2. 7.
JSP Servlet 내장 객체 (Implicit Object) JSP Servlet 내장 객체 (Implicit Object) 내장 객체 (Implicit Object) JSP page 안에 선언을 하지 않고도 사용할 수 있는 객체 Web container가 JSP page를 Servlet class로 변환시키면서 자동으로 내장 객체를 선언 Scriptlet을 다중으로 사용하지 않아 코드가 간결해질 수 있음 response.sendRedirect() : 현재 실행 중인 JSP page의 실행을 중단하고 다른 Web page가 대신 호출되도록 만드는 기능 forward 방식으로 페이지 이동 및 데이터 전송 RequestDispatcher rd = request.getRequestDispatcher("데이터를 받는 경로"); request.setAttribute("ke.. 2023. 2. 4.
JSP Servlet Java Server Pages 기본 JSP Servlet Java Server Pages 기본 1. JSP(Java Server Pages) HTML내에 Java 코드를 작성하고 웹 서버에서 웹 페이지를 생성하여 웹 브라우저에 돌려주는 자바를 기반으로 한 스크립트 언어 .jsp 확장자를 가짐 동적으로 작동하여 응답은 html을 이용함 jsp → Servlet(.java) → 클래스(.class) → html로 변환되어 실행 ※ 실제 자동 생성되는 servlet과 .class 2. JSP 필요성 Servlet의 특징 자바 코드로 구현한 후 컴파일하고 배포해야 한다. 코드가 수정되면 다시 컴파일하고 배포해야 한다. HTML 코드를 Servlet 클래스 내에서 문자열로 작성해야 한다. 프로그램이 복잡해지면 출력되는 HTML 페이지를 상상하기 어.. 2023. 1. 30.
JSP Servlet 데이터 전송 방식 Get, Post JSP Servlet 데이터 전송 방식 Get, Post 1. 데이터 전송 방식 : 데이터 전송 방식을 지정하는 method 속성 이용 Get : 데이터 조회 요청 (default) Post : 데이터 생성 요청 Put : 데이터 수정 요청 Delete : 데이터 삭제 요청 2. GET 방식 URL에 데이터를 포함시켜 요청 데이터를 패킷의 Header에 포함하여 전송 전송하는 데이터 길이에 한계 존재 (브라우저에서 제한, 약 255자) 보안에 취약 캐싱 가능 Tomcat 7.0버전 이하일 경우 get 방식 한글 인코딩 3. Post 방식 URL에 데이터를 노출하지 않고 요청 데이터를 패킷의 Body에 담아서 전송 전송하는 데이터의 길이에 제한 없음 보안에 강함 캐싱 불가능 Post 방식 한글 인코딩 : .. 2023. 1. 28.
JSP Servlet 데이터 전송 form 태그, input 태그 JSP Servlet 데이터 전송 form 태그, input 태그 1. 데이터 전송 action : Servlet의 url mapping 값 name : 보내고 싶은 데이터 이름표 부착 submit : 버튼을 눌렀을 때 전송 가능 ※ 트리구조 Servlet, HTML, CSS, JS 위치 ▶ 연습 입력한 값을을 서버에 전송하여 웹 페이지에 출력하기 ※ 한글 출력 코드 : response.setContentType("text/html;charset=UTF-8"); 질문 : package Servlet0126; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.ser.. 2023. 1. 27.
JSP Servlet Print, Table JSP Servlet Print, Table ※ Servlet을 만들 때 URL Mapping 설정 가능 1. request, response request 클라이언트의 요청 정보를 Servlet으로 넘겨주기 위한 객체 (요청에 대한 정보를 가진 객체) response Servlet이 클라이언트에 응답을 보내는데 필요한 객체 (응답에 대한 정보를 가진 객체) 2. Print ▶ 연습 화면에 "Hello Servlet!" 문자열 출력하기 ① 웹 페이지에 출력할 수 있는 스트림 열어주기 ※ 스트림 : 입출력할 수 있는 객체를 명칭하는 단어 ② 출력 스트림 사용하기 package Servlet0126; import java.io.IOException; import java.io.PrintWriter; impo.. 2023. 1. 26.