본문 바로가기

Back48

2023.02.07_EL, 위의 방식이 아닌 방법을 통해 서버 구동시 서블렛이 제대로 작동되지 않아서 원하는 결과가 출력되지 않을 수 있다. servlet을 타고 jsp파일로 넘어오는 것이다. el구문은 영역객체 안에 있는 속성에 접근해서 값을 가져온다. 스크립트릿에 선언된 변수는 가져올 수 없다. 그러므로 page scope에 저장해서 가져와야 브라우저에 출력할 수 있다. pageContext.setAttribute("str1", str1); pageContext를 사용해서 그냥 출력하려면 object 타입은 비교, 더하기 연산이 불가능하다. 따라서 형변환 후 출력해야 한다. 그런데 el구문을 사용하면 자동 형변환되기 때문에 직접 형변환 코드를 사용하지 않고도 결과값을 출력할 수 있다. 4교시 null체크할 때는 두 가지 방법이.. 2023. 2. 7.
JSP_20230203_1~4교시 [20230203_1교시] JSP(Java Server Page) 서블릿은 자바 언어로 동적인 페이지를 구현해야 한다. 그와 달리 JSP는 HTML 페이지 안에서 스크립트 형태로 동적인 페이지를 구현한다. Servlet JSP 형태 Java 코드에 HTML 코드 삽입 HTML 코드에 Java 코드 삽입 예시 out.println(""); 특징 비즈니스 로직 처리에 적합 화면 로직 처리에 적합 JSP의 목표는 서블릿의 비즈니스 로직으로부터 화면 로직을 분리하는 것을 목표로 한다. JSP 실행 과정 웹 컨테이너는 클라이언트로부터의 요청이 JSP에 대한 요청일 경우 먼저 JSP 파일을 자바 코드(서블릿)로 변환한다. 변환된 자바 코드(서블릿)를 컴파일하고 서블릿 인스턴스를 생성한다. 서블릿 인스턴스가 생성되면.. 2023. 2. 5.
서블릿생명주기,GET,POST방식(enc)20230202_5~8교시 [20230202_5교시] 서블릿 생명주기 첫 번째 요청일 경우, 서블릿 객체를 생성하고 init() 메소드를 호출한다. 이후 요청에 대해서는 서블릿 객체 생성, init()메소드는 호출하지 않는다. 딱 한번만 실행된다. 다음에 service() 메소드가 클라이언트 요청 방식에 따라 doGet() 또는 doPost() 메소드를 호출한다. 최종적으로 서블릿이 서비스되지 않았을 때 destroy() 메소드를 호출한다. destroy() 메소드는 보통 서버가 종료되었을 때, 서블릿의 내용이 변경되어 재 컴파일 될 때 호출된다. 서블릿 생명주기 확인하는 실습 life.do 저장 후 run -> 브라우저에서 새로고침 톰캣이 구동될 때 서블렛이 자동적으로 생성되는 게 아니라 요청이 있을 때 생성이 된다. super.. 2023. 2. 2.
웹 프로젝트 생성 자바ee로 설치되어 있어야 웹 프로젝트 생성 가능 file-new dynamic web project-Project name작성 톰캣에 여러 개의 웹 어플리케이션 동작시키기 가능한데, 그것들을 찾는 이름과 경로를 지정한 것이다. 웹xml 미리 만들어두기 웹 어플리케이션이 생성됨을 확인 가능 build : 자바 위치 src java : 자바 소스파일 webjava : html css 있을 곳 WEB.xml : 웹설정, xml파일 둘 곳 tomcat을 찾아가는 포트 = context path 웹 어플리케이션 = context http = 프로토콜 이 안에는 메인 메소드가 없다. 톰캣 위에서 만든 웹애플리케이션을 구동시킬거라서 2023. 2. 2.
웹 통신 개요 1. 웹 서버(Web Server) 웹에서 서버 기능을 수행하는 프로그램 HTML, JPG, PNG 를 HTTP 프로토콜을 통해 웹 브라우저에 제공하는 서버이다. 서버 내부의 이미 만들어져 있는 정적인 요소들을 화면에 제공하는 역할만 한다. (그래서 2.웹 애플리케이션 서버와 함께 사용) 웹 서버의 종류서버설명 Apache Apache Software Foundation에서 만든 웹 서버로 HTTP 통신에 대한 여러 라이브러리 제공한다. NGINX 무료 오픈 소스 서버로 사용자 요청을 스레드가 아닌 확장성이 있는 이벤트 기반 설계로 리소스만 할당해 사용한다. Windows IIS Window OS에서 제공하는 웹 서버로 높은 수준의 보안성과 성능 제공한다.(잘 안씀) 2. 웹 애플리케이션 서버(Web A.. 2023. 1. 31.
Java의 정석 [CHAPTER3. -5~9] [CHAPTER3. -5 증감 연산자 ++, --] - 정수와 실수의 경우에는 피연산자에 저장된 값을 1 증/감 적용 가능하지만, 상수의 경우 값을 변경 할 수 없어 적용이 불가능하다. - 증감 연산자는 일반 산술 변환을 통한 자동 형변환되지 않는다. - 연산결과의 타입은 피연산자의 타입과 같다. 타입 설명 예시 전위형 값이 참조되기 전에 증가시킴 j = ++i; 후위형 갑이 참조된 후에 증가시킴 j = i++; [CHAPTER3. -6 부호 연산자] - 부호 연산자는 boolean형과 char형을 제외한 기본형에만 사용가능. 구분 기능 '-' 피연산자의 부호를 반대로 변경한 결과를 반환 '+' 없음, 부호 연산자'-'가 있어서 형식적으로 '+'를 추가해둔 것 뿐 [CHAPTER3. -7 형변환 연산자].. 2022. 12. 27.