import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; public class LocalDateTimeExample { public static void main(String[] args) { // 현재 날짜와 시간 가져오기 LocalDateTime now = LocalDateTime.now(); // DateTimeFormatter를 사용하여 원하는 형식으로 포맷팅 DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); String formattedDate = now.format(formatter); // 결과 출력 System.out.println(..
JSP 출력 버퍼 JSP의 페이지 처리 방법은 출력 버퍼에 JSP에서 처리된 결과를 모아두었다가 한꺼번에 응답하는 것이다. 2. 장점 2.1 성능 향상 처리 결과가 발생할 때마다 출력을 하게 되면 불필요한 동작이 발생할 수 있는데, 이 문제를 해결함과 동시에 성능 향상까지 할 수 있다. 2.2 최종 출력 이전에 처리 결과 수정 가능 버퍼 없이 데이터를 바로 출력하면 중간에 출력 내용을 수정할 수가 없다. 버퍼를 이용하면 버퍼에 모아둔 중간의 HTTP 응답 헤더 등을 수정할 수 있다. 2.3 기능이나 에러 처리에 용이 a.jsp 페이지에서 모든 작업을 처리하지 못 하고 특정 조건에 의해 b.jsp로 포워딩 해야 하는 상황 버퍼 없는 경우 : a.jsp에서 일부 처리한 결과와 b.jsp의 처리결과와 섞여서 ..
서블릿 서버 쪽에서 실행되면서 클라이언트의 요청에 따라 동적으로 서비스를 제공하는 자바 클래스이다. 자바의 모든 특징을 가지지만, 차이점은 독자적으로 실행되지 못하고 톰캣과 같은 JSP/Servlet 컨테이너에서 실행된다는 것이다. 서블릿이 있는 웹의 동작 방식 클라이언트가 웹 서버에 요청하면 웹 서버는 그 요청을 톰캣과 같은 웹 애플리케이션 서버(WAS)에 위임한다. 그러면 WAS는 각 요청에 해당하는 서블릿을 실행한다. 그리고 서블릿은 요청에 대한 기능을 수행한 후 결과를 반환하여 클라이언트에 전송한다. 특징 서버 쪽에서 실행되면서 기능을 수행한다. 기존의 정적인 웹 프로그램의 문제점을 보완하여 동적인 여러 가지 기능을 제공한다. 스레드 방식으로 실행된다. 객체 지향적이다. 컨테이너에서 실행된다. 컨..
정의 정적인 웹 애플리케이션 기능을 그대로 사용하면서 서블릿, JSP, 자바 클래스들을 추가하여 사용자에게 동적인 서비스를 제공하는 프로그램이다. 웹 컨테이너에서 실행되는 JSP, 서블릿, 자바 클래스들을 사용해 정적 웹 프로그래밍 방식의 단점을 보완하여 서비스를 제공하는 서버 프로그램이다. 기본 구조 톰캣과 같은 웹 컨테이너에서 실행하는 웹 애플리케이션의 기본 구조를 파악해보자. 구성 요소 기능 Application Name 웹 애플리케이션의 루트 디렉토리. 다른 웹 애플리케이션 이름과 중복을 허용하지 않으며, JSP, HTML 파일을 저장한다. WEB-INF 웹 애플리케이션에 관한 정보가 저장된 곳이다. 이 디렉터리는 외부에서 접근할 수 없다. classes 웹 애플리케이션이 수행하는 서블릿과 다른 ..
정적 웹 프로그래밍 정적 웹 프로그래밍 : 아파치와 같은 웹 서버를 이용해서 웹 페이지들을 브라우저에 표시하는 방식. 클라이언트 요청이 오면 응답으로 정적인 파일들(HTML, CSS, JS)을 전송한다. 정적 파일들은 사용자 입장에서 변경되지 않기 때문에 요즘과 같은 real time(실시간)으로 변동이 생기는 홈페이지에는 부적합하다고 볼 수 있다. 정적 웹 프로그래밍의 여러 가지 구성 요소에 대해서 알아보자. 웹 서버 : 각 클라이언트에게 정적인 데이터만 서비스하는 컴퓨터를 의미한다. 클라이언트 : 네트워크로 서버에 접속한 후 서버로부터 서비스를 제공받는 컴퓨터를 의미한다. HTTP Protocol : Hyper Text Transfer Protocol의 약자로, www 서비스를 제공하는 통신 규약을 ..
일반적으로 많이 사용하는 표준화 소스 구조를 웹 애플리케이션 모델이라고 한다. 웹 애플리케이션의 종류에는 모델 1과 모델 2 방식이 있다. 모델 1 방식은 현대 개발 업계에서 사용하지 않는 방식으로 이 글에서 다루지 않는다. 모델 2는 지금에서도 사용하고 있는 MVC 패턴이라고 할 수 있다. 그럼 MVC 패턴에 대해 알아보자. MVC 패턴 Model - View - Controller의 약자로, 웹 애플리케이션을 화면 부분, 요청 처리 부분, 로직 처리 부분으로 나누어 개발하는 디자인 패턴이다. MVC 특징으로는 다음과 같다. 각 기능이 분리되어 있어 개발 및 유지보수가 편리하다. 각 기능의 재사용성이 높아진다. 디자이너와 개발자의 작업을 분업화해서 쉽게 개발할 수 있다. Model : 비즈니스 영역(데..