본문 바로가기

반응형

웹 어플리케이션 공부

스프링 필터 지난번 포스팅에서 커스텀 스프링 필터의 오류를 작성하였으니 이번 포스팅에서는 스프링 필터 구조에 대해서 자세하게 적고자 합니다. 스프링 필터에 대해서 설명하기 전, 서블릿과 서블릿 컨테이너에 대해서 간략하게 요약해보았습니다. 해당 개념이 모호하신 분들은 한번 읽고 스프링 필터에 대해서 읽어주세요. 서블릿이란 서블릿이란 Dynamic Web Page를 만들 때 사용되는 자바 기반의 웹 애플리케이션 프로그래밍 기술이다. 웹을 만들 때 다양한 요청과 응답이 있고 이러한 요청과 응답을 간단한 메서드 호출로 처리해주는 기술이 서블릿의 역할이다. 서블릿 컨테이너란 서블릿을 담고 관리해주는 컨테이너이다. 서블릿 컨테이너는 구현되어 있는 서블릿 클래스의 규칙의 맞게 서블릿을 관리해준다. 클라이언트에서 요청을 하면 컨테.. 더보기
Spring으로 개발하며 맞닥뜨린 CORS! 앞서, CORS에러 문제 해결방법에 대하여 설명하기 전에 CORS에 대하여 간략하게 설명하고자 합니다. 더 자세한 내용을 알고 싶다면 해당 페이지에서 확인하는 것을 추천드립니다. CORS란? 교차 출처 리소스 공유(Cross-Origin Resource Sharing, CORS)는 추가 HTTP 헤더를 사용하여, 한 출처에서 실행 중인 웹 애플리케이션이 다른 출처의 선택한 자원에 접근할 수 있는 권한을 부여하도록 브라우저에 알려주는 체제입니다. 웹 애플리케이션은 리소스가 자신의 출처(도메인, 프로토콜, 포트)와 다를 때 교차 출처 HTTP 요청을 실행합니다. 위에 나온 시나리오를 요약해보았습니다. 클라이언트(=브라우저)의 웹 컨텐츠가 'https://foo.example'이고, https://bar.ot.. 더보기
API API Application Programming Interface의 약자 API(Application Programming Interface, 응용 프로그램 프로그래밍 인터페이스)는 응용 프로그램에서 사용할 수 있도록, 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스를 뜻함 주로 파일 제어, 창 제어, 화상 처리, 문자 제어 등을 위한 인터페이스를 제공 프로그래밍을 할 때 필요한 인터페이스를 API라고 함. Rest API Representational State Transfer REST API란 말 그대로 REST 형식의 API를 말함 REST API란 핵심 컨텐츠 및 기능을 외부 사이트에서 활용할 수 있도록 제공되는 인터페이스 Web API URI는 정보의 자원을 표현.. 더보기
jsp WAS는 웹 브라우저로부터 JSP에 대한 요청을 받게 되면, JSP 코드를 서블릿 소스코드로 변환한 후 컴파일 하여 실행되게 됩니다. 서블릿으로 컴파일되어 실행될 때 상황에 따라서 어떤 메소드들이 실행되는지 잘 알아야, JSP를 알맞게 작성할 수 있다. JSP란(java server page) JSP는 서블릿 기술을 사용 JSP의 실행 순서(JSP 코드가 Servlet으로 변환될 때)--> Q. html부분만 변경되었다면? 브라우저가 웹서버에 JSP에 대한 요청 전보를 전달 브라우저가 요청한 JSP가 최초로 요청했을 경우만 JSP로 작성된 코드가 서블릿으로 코드로 변환함.(java 파일 생성) 서블릿 코드를 컴파일해서 실행가능한 bytecode로 변환함(class 파일 생성) 서블릿 클래스를 로딩하고 인.. 더보기
웹 개발 기본 지식 HTTP(Hyper text Transfer Protocol) 작동 방식 HTTP 는 서버/클라이언트 모델을 따른다 장점 불특정 다수를 대상으로 하는 서비스에 적합 클라이언트와 서버가 계속 연결된 형태가 아니기 때문에 클라이언트와 서버 간의 최대 연결 수보다 훨씬 많은 요청과 응답 처리 가능 단점 무상태의 특징으로 클라이언트의 이전 상황을 알 수 없음 정보를 유지하기 위해서 Cookie 와 같은 기술이 등장했음 HTTP vs. HTTPS HTTPS(Hypertext Transfer Protocol Secure) HTTP 프로토콜의 문제점은 서버에서부터 브라우저로 전송되는 정보가 암호화 되지 않는 것 HTTPS프로토콜은 SSL(보안 소켓 계층)을 사용함 SSL은 서버와 브라우저 사이에 안전하게 암호화된 연.. 더보기
MongoDB 와 Spring 연동설정 MongoDB Download(MacOS) 다운로드참조페이지 위를 참조하여 mongoDB 다운로드 이후, mongod 실행시켜준다. test계정생성 위를 참조하여 테스트할 계정 및 데이터베이스와 콜렉션을 생성해준다. pom.xml 수정 몽고디비와의 연결을 위해서는 라이브러리를 사용해야 한다. 기본적으로 아래의 두 개의 라이브러리 설정을 해준다. org.mongodb mongo-java-driver 3.2.2 org.springframework.data spring-data-mongodb 2.2.6.RELEASE context.xml 2개의 라이브러리를 추가한뒤에 설정파일을 추가하여 준다. 필자는 resources에 context-mongo.xml로 저장하였다. credentials라는 부분에는 "사용자아.. 더보기
Spring 공부 - 초기 설정 1. pom.xml Maven 은 자바 프로젝트의 빌드를 자동화해주는 빌드 툴이다. 즉, 자바 소스를 compile 하고 package 해서 deploy하는 일을 자동화 해주는 것이다. Maven 은 settings.xml 과 pom.xml 두 가지 설정파일을 참조한다. settings.xml은 maven tool 자체에 관련된 설정을 담당한다. Maven 자체에 설정 값을 바꾸는 일은 잘 없으므로 우리가 주목해야 할 설정파일은 pom.xml이다. POM(Project Object Model)을 설정하는 파일인 pom.xml은 다시 말하자면 프로젝트 내 빌드 옵션을 설정하는 부분이다. pom.xml을 살펴보자. webapp Maven 프로젝트를 설정했다면 태그가 생성되었을 것이다. 각 태그가 의미하는 바.. 더보기
서블릿이란 자바 웹 어플리케이션을 공부하며, 다소 헷갈렸던 개념 + 중요한 개념 등을 기록해보고자 한다. 우선 자바 웹 어플리케이션(Java Web Application)은 WAS(예: 톰캣)에 설치되어 동작하는 어플리케이션을 말한다. 자바 웹 어플리케이션에는 HTML, CSS, 이미지, 자바로 작성된 클래스(Servlet, package, interface 등), 각종 설정 파일 등이 포함된다. 이 중, 서블릿이란 자바 웹 어플리케이션 구성요소 중 동적인 처리를 하는 프로그램의 역할을 말하며, 다시 말하면 WAS에 동작하는 JAVA클래스인것이다. 현재 프로젝트에서 웹을 개발할 때 서블릿을 직접 쓰기보다는, 다양한 프레임워크를 사용해서 개발하는 경우가 많다. 다만, 그 프레임워크의 동작을 이해하기 위해서는 서블릿의.. 더보기

반응형