본문 바로가기
서블릿 , JSP , 4가지 scope 서블릿(Servlet)과 JSP(JavaServer Pages)는 웹 애플리케이션 개발을 위한 Java 기반 기술입니다. 서블릿 클라이언트로부터 요청을 받아, 해당 요청을 처리하는 자바 클래스입니다. 웹 애플리케이션 서버에서 실행되며, HTTP 프로토콜을 기반으로 동작하며, 서버에서 클라이언트로 데이터를 전송하는 작업을 수행합니다. 서블릿의 역할로는 HTTP 요청 처리 HTTP 응답 생성 데이터베이스 연동 파일 업로드 주로 비즈니스 로직과 프로세싱을 수행합니다. Servlet API를 사용하여 Servlet을 개발할 수 있으며, Servlet은 Java 클래스로 작성되어 웹 애플리케이션 서버에서 동작합니다. JSP HTML을 기반으로 하는 웹 페이지를 동적으로 생성하기 위한 기술입니다. HTML 코드 내.. 2023. 2. 22.
RESTful API RESTful API Representational State Transfer API의 약자로, REST 아키텍처 스타일을 따르는 웹 API를 말합니다. REST는 분산 시스템에서 서버와 클라이언트 간의 통신을 위한 아키텍처 스타일 중 하나로, 웹 기술의 발전에 따라 HTTP 프로토콜을 기반으로 하여 구현된 API입니다. RESTful API는 리소스(Resource)를 URI로 정의하고, 해당 리소스에 대한 CRUD(Create, Read, Update, Delete) 작업을 HTTP 메서드(GET, POST, PUT, DELETE 등)를 이용하여 수행합니다. 또한, RESTful API는 클라이언트와 서버 간의 상태 정보를 주고 받지 않고, 상태 정보를 URI와 HTTP 메서드로만 처리하며, 각각의 .. 2023. 2. 22.
sendRedirect / forward 방식 sendRedirect와 forward는 서버측에서 클라이언트의 요청에 대한 처리 결과를 전달하기 위한 두 가지 방법입니다. sendRedirect 클라이언트에게 다른 URL로 이동하도록 요청하는 메서드입니다. 이 메서드는 서버에서 클라이언트에게 새로운 요청을 보내도록 하여, 클라이언트가 다른 페이지로 이동하게 됩니다. 이 때, URL이 변경되므로 브라우저에서는 새로운 페이지를 요청하는 것으로 인식합니다. 따라서, 클라이언트의 요청과 서버의 응답은 두 번 발생하게 되며, 서버에서는 새로운 요청에 대한 처리를 해야 합니다. response.sendRedirect(""); forward 서버에서 클라이언트의 요청을 처리한 후, 다른 페이지로 데이터를 전달하여 클라이언트에게 응답하는 방식입니다. 이 때, 클라.. 2023. 2. 22.
요청객체 , 응답객체 WAS는 웹브라우저를 통해 요청(request)을 받으면 요청정보와 응답을 위한 정보를 HttpServletRequest와 HttpServletResponse 객체에 저장하여 해당 서블릿에 전달합니다. 해당 서블릿은 **doGet(), doPost()**등과 같은 메서드의 인자로 전달된 HttpServletRequest 객체로부터 요청 정보를 확인한 후 HttpServletResponse 객체를 활용하여 응답처리를 하게 됩니다. HttpServletRequest 요청 정보를 서블릿에게 전달하기 위한 객체 헤더 정보, 파라미터, URL 등의 정보를 확인할 수 있는 메서드를 가지고 있음 ex) getParameter(), getRequestURL() body의 Stream을 읽어 들이는 메소드를 가지고 있음.. 2023. 2. 22.
리액트 (React) React React는 Facebook에서 개발한 UI 라이브러리로, 모던 웹 애플리케이션 개발에 많이 사용됩니다. React는 다음과 같은 이유로 많은 개발자들에게 선택되어 사용되고 있습니다. Component 기반 구조: React는 Component 기반의 구조를 가지고 있어, UI를 작은 단위로 쪼개고 각각의 컴포넌트로 관리할 수 있습니다. 이를 통해 코드의 재사용성과 유지보수성이 높아지며, 대규모 애플리케이션 개발에 적합합니다. Virtual DOM: React는 Virtual DOM을 사용하여 UI 업데이트 성능을 최적화합니다. Virtual DOM은 실제 DOM과 동기화되는 가상의 DOM 구조를 사용하여, 변경된 부분만 업데이트하고 전체 UI를 다시 렌더링하는 것을 방지합니다. 이를 통해 U.. 2023. 2. 22.
[SQL] 프로시저와 트리거의 차이점 트리거 (TRIGGER) 특정한 테이블에 INSERT,UPDATE,DELETE와 같은 DML문이 수행되었을 때, 데이터베이스에서 자동으로 동작하도록 작성된 저장 프로그램. (사용자가 직접 호출하여 사용하는게 아닌 데이터베이스에서 자동으로 수행) 데이터의 무결성과 일관성을 위해 사용자 정의 함수를 사용하는 것이 트리거의 용도이다. 2023. 2. 12.
[SQL] RANK, DENSE_RANK, ROW_NUMBER 순위함수 1. RANK RANK 함수는 중복 값들에 대해서 동일 순위로 표시하고, 중복 순위 다음 값에 대해서는 중복 개수만큼 떨어진 순위로 출력하도록 하는 함수 입니다. SELECT empNo, empName, salary, RANK() OVER (ORDER BY salary DESC) RANK등수 FROM employee; 2. DENSE_RANK DENSE_RANK 함수는 중복 값들에 대해서 동일 순위로 표시하고, 중복 순위 다음 값에 대해서는 중복 값 개수와 상관없이 순차적인 순위 값을 출력하도록 하는 함수 입니다. SELECT empNo, empName, salary, DENSE_RANK() OVER (ORDER BY salary DESC) DENSE_RANK등수 FROM employee; 3. ROW_.. 2023. 2. 12.
[SQL] 서브쿼리 서브쿼리 (Sub Query) SELECT 쿼리문 안에 포함 되어있는 또 하나의 별도 SELECT 쿼리문을 말한다. 1. 단일 행 서브쿼리 (Single Row SubQuery) SELECT절에서 단일 행 연산자를 사용하여 서브쿼리의 결과 값을 하나만 출력하는 쿼리이다. (※ 단일 행 연산자) : >, 2023. 2. 12.
[SQL] 인라인 뷰 (Inline View) 인라인 뷰 (Inline View) FROM 절에서 사용되는 서브쿼리를 인라인 뷰(Inline View) 라고 한다. 서브쿼리의 결과가 마치 실행 시에 동적으로 생성된 테이블인 것처럼 사용할 수 있다. 인라인 뷰는 SQL문이 실행될 때만 임시적으로 생성되는 동적인 뷰이기 때문에 데이터베이스에 해당 정보가 저장되지 않는다. SELECT * FROM ([SELECT [컬럼 1], [컬럼 2], ... FROM [테이블] WHERE [조건절] ) AS InlineView_table WHERE [조건절] /* FROM 절에 인라인뷰를 사용하여 원하는 테이블을 만들어 테이블로 만들어 사용할 수 있다.*/ /* 테이블 예시 */ tb_Student 테이블 ---------------------------------.. 2023. 2. 12.