Java/Spring
-
Spring Filter란 HTTP 요청과 응답을 변경할 수 잇는 재사용 가능한 코드이다. 요청과 응답에 대해서 최초/최종 단계의 위치에 존재하며 이를 통하여 요청, 응답의 데이터를 변경하거나, Spring에 의해서 데이터가 변환되기 전 순수한 요청 데이터를 확인할 수 있다. 아래의 이미지를 보면 클라이언트의 모든 요청을 처리하는 DispatcherServlet으로 가기 전 Filter가 적용된다. * 이미지 참조 : http://wiki.simuruk.com/index.php/spring_%EA%B5%AC%EC%A1%B0_%EC%84%A4%EB%AA%85 CharacterEncodingFilter 스프링 웹 요청과 응답에 대한 인코딩 처리 필터 CharacterEncodingFilter 클래스는 Ser..
Spring FilterSpring Filter란 HTTP 요청과 응답을 변경할 수 잇는 재사용 가능한 코드이다. 요청과 응답에 대해서 최초/최종 단계의 위치에 존재하며 이를 통하여 요청, 응답의 데이터를 변경하거나, Spring에 의해서 데이터가 변환되기 전 순수한 요청 데이터를 확인할 수 있다. 아래의 이미지를 보면 클라이언트의 모든 요청을 처리하는 DispatcherServlet으로 가기 전 Filter가 적용된다. * 이미지 참조 : http://wiki.simuruk.com/index.php/spring_%EA%B5%AC%EC%A1%B0_%EC%84%A4%EB%AA%85 CharacterEncodingFilter 스프링 웹 요청과 응답에 대한 인코딩 처리 필터 CharacterEncodingFilter 클래스는 Ser..
2022.04.27 -
Dynamic Web Project 란? 이클립스에서 서블릿/JSP 기반 동적인 웹 어플리케이션을 만들기 위한 프로젝트이다. 1. 프로젝트 생성 1-1. 이클립스에서 Project Explorer 아무곳이나 마우스 오른쪽 버튼 클릭! > New 클릭! > Other 클릭! 1-2. Web > Dynamic Web Project 선택 > Next 클릭! 1-3. Project name 입력 > 웹 프로젝트를 구동할 Tomcat 설정을 위해 New Runtime 클릭! 1-4. Apache 선택 > Apache Tomcat v9.0 선택 > Next 클릭! 1-5. Apache Tomcat이 없을 경우 Download and Install 클릭 1-6. Finish 1-7. Apache Tomcat 설치확인..
Dynamic Web Project 만들기 1 - 프로젝트 생성Dynamic Web Project 란? 이클립스에서 서블릿/JSP 기반 동적인 웹 어플리케이션을 만들기 위한 프로젝트이다. 1. 프로젝트 생성 1-1. 이클립스에서 Project Explorer 아무곳이나 마우스 오른쪽 버튼 클릭! > New 클릭! > Other 클릭! 1-2. Web > Dynamic Web Project 선택 > Next 클릭! 1-3. Project name 입력 > 웹 프로젝트를 구동할 Tomcat 설정을 위해 New Runtime 클릭! 1-4. Apache 선택 > Apache Tomcat v9.0 선택 > Next 클릭! 1-5. Apache Tomcat이 없을 경우 Download and Install 클릭 1-6. Finish 1-7. Apache Tomcat 설치확인..
2022.04.26 -
메이븐(Maven) 자바 프로젝트의 빌드(Build)를 자동화 해주는 빌트 툴이며, 자바 프로젝트 라이브러리 관리 도구 여기서 빌드란 쉽게 말해 우리가 작성한 소스코드(Java), 프로젝트에서 사용한 각각의 파일 및 자원(.xml, .jar, .properties)을 JVM이나 WAS가 인식할수 있도록 패키징 하는 과정 및 결과물이다. 이러한 빌드를 하기 위해서 Maven을 사용하여 프로젝트 라이브러리 및 관리도구로 사용된다. Maven은 필요한 라이브러리를 특정문서(pom.xml)에 정의해 놓으면 사용할 라이브러리 뿐만 아니라 해당 라이브러리가 동작할때 필요한 다른 라이브러리까지 관리하여 자동으로 다운로드 해준다. POM(Project Object Model) - pom.xml이란 Maven을 ..
메이븐(Maven)과 그래들(Gradle)메이븐(Maven) 자바 프로젝트의 빌드(Build)를 자동화 해주는 빌트 툴이며, 자바 프로젝트 라이브러리 관리 도구 여기서 빌드란 쉽게 말해 우리가 작성한 소스코드(Java), 프로젝트에서 사용한 각각의 파일 및 자원(.xml, .jar, .properties)을 JVM이나 WAS가 인식할수 있도록 패키징 하는 과정 및 결과물이다. 이러한 빌드를 하기 위해서 Maven을 사용하여 프로젝트 라이브러리 및 관리도구로 사용된다. Maven은 필요한 라이브러리를 특정문서(pom.xml)에 정의해 놓으면 사용할 라이브러리 뿐만 아니라 해당 라이브러리가 동작할때 필요한 다른 라이브러리까지 관리하여 자동으로 다운로드 해준다. POM(Project Object Model) - pom.xml이란 Maven을 ..
2022.04.25 -
Thymeleaf 타임리프는 뷰 템플릿 엔진으로 JSP 와 같이 백엔드 쪽에서 클라이언트에게 응답할 웹 브라우저 페이지를 만들어주는 역할을 한다. 뷰 템플릿 엔진이지만 기존 템플릿 엔진과는 차별점이 있다. - 순수 HTML 파일 구조를 유지하기 때문에 서버상에서 동작하지 않아도 된다. 기존의 템플릿으로는 항상 서버를 구동시켜 결과물을 확인해야 하지만 타임리프의 경우 순수 HTML 이기 때문에 브라우저에서 바로 확인할 수 있다. 이러한 이유는 타임리프가 HTML 의 속성(Attribute)을 기반으로 작성되기 때문에 기존의 HTML 구조를 건드리지 않기 때문이다. 이러한 순수 HTML을 유지하기 때문에 Natural Template(내츄럴 템플릿)이라고 불린다. 타임리프는 th:xxx 처럼 HTML 태그 ..
Thymeleaf 와 JSPThymeleaf 타임리프는 뷰 템플릿 엔진으로 JSP 와 같이 백엔드 쪽에서 클라이언트에게 응답할 웹 브라우저 페이지를 만들어주는 역할을 한다. 뷰 템플릿 엔진이지만 기존 템플릿 엔진과는 차별점이 있다. - 순수 HTML 파일 구조를 유지하기 때문에 서버상에서 동작하지 않아도 된다. 기존의 템플릿으로는 항상 서버를 구동시켜 결과물을 확인해야 하지만 타임리프의 경우 순수 HTML 이기 때문에 브라우저에서 바로 확인할 수 있다. 이러한 이유는 타임리프가 HTML 의 속성(Attribute)을 기반으로 작성되기 때문에 기존의 HTML 구조를 건드리지 않기 때문이다. 이러한 순수 HTML을 유지하기 때문에 Natural Template(내츄럴 템플릿)이라고 불린다. 타임리프는 th:xxx 처럼 HTML 태그 ..
2022.04.08 -
서블릿 동적인 웹 페이지를 만들 때 사용되는 자바 기반의 웹 어플리케이션 프로그래밍 기술이다. 클라이언트의 요청이 있고 그 요청에 대한 응답을 하기 위해 결과를 다시 전송해야하는데 이러한 역할을 하는게 서블릿이다. 예를 들어, 어떠한 사용자가 로그인을 하려고 아이디와 패스워드를 입력하고 로그인 버튼을 누른다. 이때 서버는 사용자가 입력한 로그인 정보가 맞는지 확인하고, 맞으면 요청한 페이지를 보여주는데 이러한 역할을 수행하는게 서블릿이다. 등장 배경 과거 서버는 정적인 데이터(HTML문서)만 주고받을 수 있었다. 클라이언트가 데이터를 요청했을 때 서버는 미리 저장해놓은 데이터만 반환했었다. 하지만 웹이 활성화되고 사용자가 많아지다보니 다양한 기능을 하는 웹을 구현하고자 했다. 사용자가 필요한 요구사항에 ..
서블릿(Servlet), 서블릿 컨테이너(Servlet Container)서블릿 동적인 웹 페이지를 만들 때 사용되는 자바 기반의 웹 어플리케이션 프로그래밍 기술이다. 클라이언트의 요청이 있고 그 요청에 대한 응답을 하기 위해 결과를 다시 전송해야하는데 이러한 역할을 하는게 서블릿이다. 예를 들어, 어떠한 사용자가 로그인을 하려고 아이디와 패스워드를 입력하고 로그인 버튼을 누른다. 이때 서버는 사용자가 입력한 로그인 정보가 맞는지 확인하고, 맞으면 요청한 페이지를 보여주는데 이러한 역할을 수행하는게 서블릿이다. 등장 배경 과거 서버는 정적인 데이터(HTML문서)만 주고받을 수 있었다. 클라이언트가 데이터를 요청했을 때 서버는 미리 저장해놓은 데이터만 반환했었다. 하지만 웹이 활성화되고 사용자가 많아지다보니 다양한 기능을 하는 웹을 구현하고자 했다. 사용자가 필요한 요구사항에 ..
2022.04.07 -
HTML HTML은 Hyper Text Markup Language 의 약자로 웹페이지를 만들기 위한 마크업 언어로 웹브라우저 위에서 동작한다. 여기서 Hyper Text의 Hyper 뜻이 '뛰어넘다', '초월하다' 의미를 가지고 있듯이 Hyper Text란 웹페이지에서 다른 페이지로 이동할 수 있도록 하는 개념을 가지고 있습니다. JSP와 다르게 WAS 필요 없이 웹브라우저 위에서 동작하므로 편리하다. JSP JSP는 JavaServer Pages의 약자로 Java 언어를 기반으로 하는 Server Side 스크립트 언어이다. HTML 코드에 Java 코드를 넣어 동적인 웹 페이지를 생성하는 웹 어플리케이션 도구 * 웹 어플리케이션(Web Application) 어플리케이션이란 사용자가 컴퓨터로 원하는..
HTML 과 JSP 차이HTML HTML은 Hyper Text Markup Language 의 약자로 웹페이지를 만들기 위한 마크업 언어로 웹브라우저 위에서 동작한다. 여기서 Hyper Text의 Hyper 뜻이 '뛰어넘다', '초월하다' 의미를 가지고 있듯이 Hyper Text란 웹페이지에서 다른 페이지로 이동할 수 있도록 하는 개념을 가지고 있습니다. JSP와 다르게 WAS 필요 없이 웹브라우저 위에서 동작하므로 편리하다. JSP JSP는 JavaServer Pages의 약자로 Java 언어를 기반으로 하는 Server Side 스크립트 언어이다. HTML 코드에 Java 코드를 넣어 동적인 웹 페이지를 생성하는 웹 어플리케이션 도구 * 웹 어플리케이션(Web Application) 어플리케이션이란 사용자가 컴퓨터로 원하는..
2022.04.04