코드 실행 [Shift] + [F10] 코드 삭제 [Ctrl] + [Y] 코드 복사 [Ctrl] + [D] 코드 이동 [Ctrl] + [Shift] + [방향키]
[Spring Boot] CSRF (사이트 간 요청 위조)
·
Java/Spring Boot
CSRF (사이트 간 요청 위조, Cross Site Request Forgery) - 웹사이트 취약점 공격 - 사용자가 자신의 의지와는 무관하게 공격자가 의도한 행위를 특정 웹사이트에 요청하게 하는 공격 - 특정 웹사이트가 사용자의 웹 브라우저를 신용하는 상태임을 노린 공격 방식 - 사용자가 웹사이트에 로그인한 상태에서, CSRF 공격 코드가 삽입된 페이지를 열음 → 공격 대상이 되는 웹사이트는 위조된 공격 명령이 믿을 수 있는 사용자로부터 발송된 것으로 판단함 → 공격에 노출됨
[Java] 어노테이션 (Annotation)
·
Java/Base
어노테이션 (Annotation) - 프로그램의 코드에 메타데이터를 추가하는 기능을 제공하는 것 - 컴파일러 or 런타임 시점에 코드를 처리하는 도구들에게 추가적인 정보를 제공함 - 주로 클래스, 메서드, 변수, 매개변수 등에 부착해서 사용됨 - 형식 : @어노테이션(속성1=값1, 속성2=값2, ...) - 코드 가독성 향상 - 자동화된 코드 생성, 테스트, 디버깅 등에 활용 # 빌트인 어노테이션 (Built-in Annotation) - @Override : 상위 클래스나 인터페이스의 메서드를 오버라이드함을 나타냄 - @Deprecated : 해당 요소가 더 이상 사용되지 않음을 나타냄 - @SuppressWarnings : 컴파일러의 경고를 무시하도록 지정..
[Java] 리플렉션 (Reflection)
·
Java/Base
리플렉션 (Reflection) - 프로그램 실행 중에 클래스의 정보를 분석/조작할 수 있는 부분 - 런타임 시점에 동작으로 클래스의 메서드/필드/생성자 등에 접근하고 호출할 수 있음 - 자바의 핵심 기능 - java.lang.reflect 패키지 # 클래스 정보 가져오기123456789// 1) Class.forName() 사용 Class<?> clazz = Class.forName("com.example.MyClass"); // 2) 객체.getClass() 사용 MyClass obj = new MyClass();Class<?>&..
[JSP] 웹 컨테이너 (Web Container)
·
Java/JSP
웹 컨테이너 (서블릿 컨테이너) - JSP와 서블릿이 실행될 수 있는 환경을 제공하는 컴포넌트 - URL에서 서블릿을 찾아 실행하고, 서블릿으로부터 결과를 받아 클라이언트에 전달함# 주요 기능 1) 통신 지원 · HTTP 등의 프로토콜을 통해 클라이언트와의 통신을 지원함 · 요청을 받아 적절한 서블릿을 실행하고, 그 결과를 클라이언트에게 전송함 2) 서블릿의 생명주기 관리 · 서블릿이 로드되어 초기화되고, 요청을 처리하며, 종료되는 과정을 관리함 3) 멀티스레딩 지원 · 클라이언트의 각 요청을 별도의 스레드로 처리함 → 동시에 여러 클라이언트의 요청을 효율적으로 처리 4) 보안 · SSL/TLS 등의 기능을 통해 보안 통신을 지원함..