java
-
Spring Security 의 Filter 들은 Spring Container 에서 Spring Bean 으로 등록되어 있다.하지만 Filter 들은 Servlet Container 에서 동작하는걸로 알고 있지만Spring Container 와 Servlet Container 는 영역 자체가 다르기 때문에 어떻게 실행되는지 궁금해서정리하게 됐다. 위 이미지처럼 Servlet Container 와 Spring Container 는 영역 자체가 다르며, Filter 는 서블릿이 제공하는 기술이다.Spring Bean 으로 등록되어 있는 Filter 들은 DelegatingFilterProxy 라는 클래스를 통해Spring Bean Filter 들을 실행시킨다. DelegatingFilterProxy ..
Spring Security Filter ChainSpring Security 의 Filter 들은 Spring Container 에서 Spring Bean 으로 등록되어 있다.하지만 Filter 들은 Servlet Container 에서 동작하는걸로 알고 있지만Spring Container 와 Servlet Container 는 영역 자체가 다르기 때문에 어떻게 실행되는지 궁금해서정리하게 됐다. 위 이미지처럼 Servlet Container 와 Spring Container 는 영역 자체가 다르며, Filter 는 서블릿이 제공하는 기술이다.Spring Bean 으로 등록되어 있는 Filter 들은 DelegatingFilterProxy 라는 클래스를 통해Spring Bean Filter 들을 실행시킨다. DelegatingFilterProxy ..
2024.06.17 -
Array(배열) 과 ArrayList 의 차이가 궁금해져 정리하게 되었다. Array(배열)ArrayList사이즈초기화 할때 명시하여 고정시킨다.String[] arr = new String[3];초기화 시 사이즈를 명시하지 않는다.크기가 가변적이며 Default 크기는 10이다.ArrayList arr_list = new ArrayList();속도초기화 시 메모리에 할당하므로ArrayList 보다 빠르다.데이터 추가 및 삭제 시 메모리를 재할당하기 때문에속도가 Array 보다 느리다.크기 변경사이즈 변경 불가추가, 삭제 가능add(), remove() 아래 예시를 보자String[] arr = new String[3];ArrayList arr_list = new ArrayList();System...
Array(배열) 과 ArrayList 차이Array(배열) 과 ArrayList 의 차이가 궁금해져 정리하게 되었다. Array(배열)ArrayList사이즈초기화 할때 명시하여 고정시킨다.String[] arr = new String[3];초기화 시 사이즈를 명시하지 않는다.크기가 가변적이며 Default 크기는 10이다.ArrayList arr_list = new ArrayList();속도초기화 시 메모리에 할당하므로ArrayList 보다 빠르다.데이터 추가 및 삭제 시 메모리를 재할당하기 때문에속도가 Array 보다 느리다.크기 변경사이즈 변경 불가추가, 삭제 가능add(), remove() 아래 예시를 보자String[] arr = new String[3];ArrayList arr_list = new ArrayList();System...
2024.05.29 -
Java 는 많은 양의 데이터를 처리 하기 위해서 배열, 컬렉션 등을 이용합니다.저장된 배열, 컬렉션들은 반복문(for), 반복자(Iterator) 를 사용하여 데이터 형식에 맞게새로운 코드를 작성했다.하지만 이러한 반복문, 반복자를 이용한 코드는 가독성과 재사용성 그리고 반복되는 코드들이너무 많았다.또한 Collection 이나 Iterator 와 같은 인터페이스의 각 컬렉션 클래스들은 같은 기능이지만중복해서 정의되어 있다. 아래 코드를 보면 Collection 과 Arrays 의 sort 함수이다.List arr = new ArrayList();arr.add("banana");arr.add("apple");arr.add("melon");String[] arr2 = { "apple", "melon", ..
Stream(스트림)이란?Java 는 많은 양의 데이터를 처리 하기 위해서 배열, 컬렉션 등을 이용합니다.저장된 배열, 컬렉션들은 반복문(for), 반복자(Iterator) 를 사용하여 데이터 형식에 맞게새로운 코드를 작성했다.하지만 이러한 반복문, 반복자를 이용한 코드는 가독성과 재사용성 그리고 반복되는 코드들이너무 많았다.또한 Collection 이나 Iterator 와 같은 인터페이스의 각 컬렉션 클래스들은 같은 기능이지만중복해서 정의되어 있다. 아래 코드를 보면 Collection 과 Arrays 의 sort 함수이다.List arr = new ArrayList();arr.add("banana");arr.add("apple");arr.add("melon");String[] arr2 = { "apple", "melon", ..
2024.05.24 -
자바 데이터 타입 Java 의 데이터 타입은 크게 두가지로 기본 타입과 참조 타입으로 분류된다. 기본 타입(Primitive Type) : byte, int, short, char, long, float, double, boolean 참조 타입(Reference Type) : 배열 타입, 문자열, 열거 타입, 클래스, 인터페이스 기본 타입(Primitive Type) 기본 타입으로 선언된 변수들은 실제 값이 변수에 저장된다. 기본 타입의 종류로는 byte, int, short, char, long, float, double, boolean 등이 있다. int obo = 20; char obo2 = "a"; 참조 타입(Reference Type) 참조 타입으로 선언된 변수들은 메모리의 주소를 값으로 갖는다..
Java 데이터 타입(기본 타입, 참조 타입)자바 데이터 타입 Java 의 데이터 타입은 크게 두가지로 기본 타입과 참조 타입으로 분류된다. 기본 타입(Primitive Type) : byte, int, short, char, long, float, double, boolean 참조 타입(Reference Type) : 배열 타입, 문자열, 열거 타입, 클래스, 인터페이스 기본 타입(Primitive Type) 기본 타입으로 선언된 변수들은 실제 값이 변수에 저장된다. 기본 타입의 종류로는 byte, int, short, char, long, float, double, boolean 등이 있다. int obo = 20; char obo2 = "a"; 참조 타입(Reference Type) 참조 타입으로 선언된 변수들은 메모리의 주소를 값으로 갖는다..
2024.02.14 -
HttpServletResponse 의 sendRedirect 메서드Java Servlet 에서 페이지 이동을 위해 redirect 하는 메서드이다.Http 프로토콜을 사용하여 정해진 규칙으로 서버가 클라이언트에게 특정 URL 로 이동하라고 요청을 보낸다. sendRedirect 메서드를 사용하게 되면 서버에서는 클라이언트에게 응답 상태값을 302 와 함께 이동할URL 정보를 Location 헤더값에 담아 전송한다.클라이언트 브라우저는 서버로부터 받은 상태값이 302 일 경우 Location 헤더 값으로 재요청을 보내어Redirect 하게 된다. 예시)개발환경 : Spring Boot, JSP 위처럼 jsp 페이지가 2개가 존재한다. test.jspasdfsadfasdfasd response.sendRe..
HttpServletResponse 의 sendRedirect() 와 RequestDispatcher 의 forward() 메서드 차이HttpServletResponse 의 sendRedirect 메서드Java Servlet 에서 페이지 이동을 위해 redirect 하는 메서드이다.Http 프로토콜을 사용하여 정해진 규칙으로 서버가 클라이언트에게 특정 URL 로 이동하라고 요청을 보낸다. sendRedirect 메서드를 사용하게 되면 서버에서는 클라이언트에게 응답 상태값을 302 와 함께 이동할URL 정보를 Location 헤더값에 담아 전송한다.클라이언트 브라우저는 서버로부터 받은 상태값이 302 일 경우 Location 헤더 값으로 재요청을 보내어Redirect 하게 된다. 예시)개발환경 : Spring Boot, JSP 위처럼 jsp 페이지가 2개가 존재한다. test.jspasdfsadfasdfasd response.sendRe..
2024.02.13 -
접근 제한자(접근 제어자)란?Java 접근 제한자는 말 그대로 접근을 제어하기 위한 키워드이다.여기서 접근이란 클래스 및 메서드 등 이들이가지고 있는 정보를 클래스, 인터페이스 등다른 패키지에서 사용하지 못하도록 막을 필요가 있다.또한 객체 생성을 못하게 하거나 필드나 메서드를 사용하지 못하도록 막아야 하는 경우도 있다. 이때 접근 제한자 키워드를 사용해 제한할 수 있다.접근 제한자의 종류에는 public, protected, default, private 접근 제한자가 존재한다. 접근 제한자 종류 public외부 패키지에 존재하는 클래스들이 자유롭게 사용할 수 있다.같은 패키지내에서나 다른 패키지에서 자유롭게 접근할 수 있다.라이브러리 같은 외부 개발자들이 사용할 수 있도록 개발한다면 public 접..
Java 접근 제한자(접근 제어자)접근 제한자(접근 제어자)란?Java 접근 제한자는 말 그대로 접근을 제어하기 위한 키워드이다.여기서 접근이란 클래스 및 메서드 등 이들이가지고 있는 정보를 클래스, 인터페이스 등다른 패키지에서 사용하지 못하도록 막을 필요가 있다.또한 객체 생성을 못하게 하거나 필드나 메서드를 사용하지 못하도록 막아야 하는 경우도 있다. 이때 접근 제한자 키워드를 사용해 제한할 수 있다.접근 제한자의 종류에는 public, protected, default, private 접근 제한자가 존재한다. 접근 제한자 종류 public외부 패키지에 존재하는 클래스들이 자유롭게 사용할 수 있다.같은 패키지내에서나 다른 패키지에서 자유롭게 접근할 수 있다.라이브러리 같은 외부 개발자들이 사용할 수 있도록 개발한다면 public 접..
2024.01.19