Seurity 보안 시큐리티 개요 선언적 시큐리티 처리 프로그래밍적 시큐리티 처리 시큐리티 개요 : 시큐리티는 허가된 사용자만이 특정 웹 페이지에 접근할 수 있도록 제한하는 보안 기능 과정 - 사용자가 웹 페이지에 접근시 JSP 컨테이너는 요청된 페이지에 보안 제약이 있는지 확인, 사용자 인증 요구 접근할 수 있는지 확인하여 승인하는 것 = 권한 부여 (Authorization) ##시큐리티 처리방법 - 선언적 시큐리티 : 코드 작성 없이 web.xml 파일에 보안 구성을 작성하여 사용자의 인증을 수행하는 방식 - 프로그래밍적 시큐리티 : request 내장 객체의 메소드를 통해 사용자의 권한 부여를 처리하는 프로그래밍 방식 ## 웹 서버에 역할과 사용자 구성하기 : 웹 애플리케이션의 인증과 권한 부여를..
필터 : 로그 기록하기 필터의 개요 Filter 인터페이스의 구현 클래스 web.xml 파일의 필터 구성 #필터의 개요 - 필터는 유저와 서버 사이에서 request와 response 객체를 먼저 받아 사전/사후 작업을 하는 것을 말한다. 유저의 request가 jsp 컨테이너 안의 html, JSP, 서블릿을 만나기 전에 필터를 거쳐 전처리를 한다. 또한 정적 리소스인 (JSP, HTML 서브릿)에서 유저에게 가기 전에 필터를 거쳐 전처리를 한다. 웹 어플리케이션에 필터 기능을 사용하기 위해서는 - Filter 인터페이스 구현하는 자바 클래스 생성 - web.xml 에 생성한 자바 클래스를 등록한다. 필터의 기능 필터 기능 Request 필터 - 사용자 인증 - 요청 정보를 로그 파일로 작성 - 암호화..
예외 처리 - 예외처리의 개요 - page 디렉티브 태그를 이용한 예외 처리 - web.xml 파일을 이용한 예외 처리 - try-catch-finally 를 이용한 예외처리 - 예외처리의 개요 : 프로그램이 실행동안 문제가 발생 했을 때 처리를 중단하고 다른 처리를 하는 것을 예외처리라고 한다. 예외처리 방법은 3가지가 있다. - page 디렉티브 태그 이용 : errorpage 와 isErrorPage 속성을 이용 - web.xml 파일을 이용 : , 요소를 이용 - try-catch-finally 이용 : 자바 언어의 예외 처리 구문 사용 #예외처리 우선순위# - JSP페이지에서 try-catch-finally 문으로 처리하는 경우 오류 출력 - page 디렉티브 태그의 errorPage 속성에서 ..
다국어 처리 다국어 처리의 개요 Locale 클래스를 이용한 다국어 처리 JSTL fmt 태그를 이용한 다국어 처리 다국어 처리의 개요 JSP 페이지의 fmt 태그를 이용하여 언어지원을 통해 지역별 언어를 제공하도록 한다. # 지역화 : 사용 국가별 환경에서 특정 언어와 지역에 맞게 적합화 하는 것 -> L10n (숫자, 날짜, 시간형식, 화폐단위, 키보드지원, 문자열의 순서 정렬, 문화에 따른 문자 그림, 지역별 법률 차이) # 국제화 : 여러 국가에서 사용할 수 있도록 다국어 지원 -> i18n #Locale 클래스를 이용한 다국어 처리 : 사용자의 지역 환경에 따라 결정되는 지역적문화 (언어, 날짜, 시간) 의 정보를 담고 있다. 웹 페이지에 보이는 언어를 어떤 언어로 보이게 할것인지 선택하도록 하..
내부 클래스, 람다식, 스트림 내부 클래스 람다식 스트림 내부 클래스 : 내부 클래스는 클래스 내부에 선언한 클래스를 말한다. 클래스 내부에 클래스를 사용하는 이유는 외부 클래스와 관련이 있던가, 다른 클래스와는 관련되지 않아 사용 하거나, 될 일이 없기 때문입니다. 내부 클래스는 선언하는 위치나 예약어에 따라 네 가지 유형을 갖는다. 인스턴스 내부 클래스 정적 내부 클래스 지역 내부 클래스 익명 내부 클래스 ## 인스턴스 내부 클래스 : 인스턴스 변수를 선언 할 때와 같이 선언 / 외부 클래스 내부에서만 생성하여 사용하는 객체를 선언할 때 사용 특징 : 외부 클래스 생성 후 인스턴스 내부 클래스가 생성된다. class OutClass{ //외부 클래스 private int num = 10; //외부 클..
기본클래스 Object 클래스 String 클래스 Wrapper 클래스 Class 클래스 Object 클래스 : 클래스의 최상위 클래스 -> 모든 클래스는 Object 클래스를 상속받는다. 이는 컴파일 과정에서 상속이 일어나므로 우리가 직접 코딩하지 않는다. 모든 클래스는 Object 클래스를 상속 받아 클래스의 메소드를 사용할 수 있다. Object 클래스의 메소드를 알아보자 String toString() : 객체를 문자열로 표현하여 반환 - 재정의하여 객체에 대한 설명이나 특정 멤버변수 값 반환 boolean equals() : 두 인스턴스가 동일한지 여부를 반환 int hashCode() : 객체의 헤시 코드 값을 반환 Object clone() : 객체를 복제하여 동일한 멤버 변수를 가진 새로운..
출처 : DO IT! 자바프로그래밍 (저 : 박은종) INTERFACE 인터페이스 인터페이스란 인터페이스와 다형성 인터페이스 요소 살펴보기 인터페이스 활용하기 인터페이스란 인터페이스는 구현 코드가 없다. 추상 메서드와 상수로만 이루어져 있다. 이러한 인터페이스는 클래스 혹은 프로그램이 제공하는 기능을 명시적으로 선언하는 역할을 한다. - implements : 인터페이스에서는 인터페이스에 선언한 기능을 클래스가 구현한다는 의미로 implements 예약어를 사용 구현하는 클래스에서는 인터페이스에 선언된 추상메서드를 구현한다. package Interface; public interface Calc { double PI = 3.14; int ERROR = -99999999; int add(int num1,..
출처 : DO IT! 자바프로그래밍 (저 : 박은종) 추상 클래스 추상클래스 템플릿 메서드 템플릿 메서드 응용 final 예약어 ### 추상 클래스 : 클래스를 구현할 때 메서드 몸체를 구현하지 않고 선언만 하는 메서드를 포함한 클래스이다. ※abstract : 추상클래스나 메서드를 선언할 때 쓰는 예약어이다. 추상클래스는 상속과 깊은 관련이 있다. 추상 클래스를 사용하는 이유도 상속을 전제로 사용하기 때문이다. Car , aiCar , AutoCar 클래스가 있다. Car 클래스에는 drive, stop 메소드가 있다. 해당 메소드는 aiCar AutoCar 클래스에서 모두 사용되는 메소드이다. 하지만, 두 메소드는 각각의 클래스에서 표현하고자 하는게 다르다. 이를 위해서 각각의 클래스에서 추상 메소드..