[☕JAVA] 예외 처리(Exception Handling)
“예외 처리는 그냥 try-catch 감싸면 되는 거 아닌가요?” 면접에서 이렇게 생각했다간 Checked/Unchecked 차이, 예외 계층 구조를 물어보는 순간 막힌다. 이론적으로 한 번 제대로 정리해보자! Java 예외 계층 구조 🌳 Java에서 예외는 아래 계층 구조를 따른다. 이 트리를 머릿속에 넣어두면 이후 내용이 훨씬 쉽게 이해된다...
무난하지 않게

“예외 처리는 그냥 try-catch 감싸면 되는 거 아닌가요?” 면접에서 이렇게 생각했다간 Checked/Unchecked 차이, 예외 계층 구조를 물어보는 순간 막힌다. 이론적으로 한 번 제대로 정리해보자! Java 예외 계층 구조 🌳 Java에서 예외는 아래 계층 구조를 따른다. 이 트리를 머릿속에 넣어두면 이후 내용이 훨씬 쉽게 이해된다...

멀티스레드를 공부하다 보면 Lock, synchronized, volatile 같은 키워드가 쏟아진다. 그런데 그 전에 한 가지 질문을 먼저 해야 한다. “왜 Lock이 필요한가?” 그 답이 바로 불변 객체를 이해하는 데서 시작된다. 멀티스레드의 전제 지식인 불변 객체를 제대로 익혀보자. 불변 객체란 무엇인가? 🤔 불변 객체(Immutable ...
🍃 Spring Framework 데이터베이스 연동 정리 JDBC 📚 JDBC(Java Database Connectivity): 자바 애플리케이션에서 데이터베이스에 접근하기 위한 자바 표준 API 스프링을 사용할 때 DB와 연결, SQL 쿼리 전송 등의 목적으로 필수적으로 사용하는 라이브러리이다. 데이터베이스 연결 public abstra...
🌐 Internet Protocol 전공 수업 정리 네트워크의 자동화를 실현하는 핵심 프로토콜! DHCP는 IP 주소를 동적으로 할당하고 네트워크 설정을 자동화하여 사용자가 네트워크에 쉽게 접속할 수 있게 해주는 필수적인 프로토콜이다. IP 주소 할당의 역사 과거의 방법들 1990년대 초 - Diskless Workstation 시대 📚...
🌐 Internet Protocol 전공 수업 정리 신뢰성 있는 데이터 전송의 핵심! TCP는 연결 지향적이고 신뢰성 있는 전송을 보장하는 Transport Layer 프로토콜이다. 패킷 손실, 순서 변경, 중복 등 네트워크의 다양한 문제를 해결하여 안정적인 데이터 전송을 제공한다. TCP Service Model Network의 Chall...
🔒 시큐어 코딩 수업 정리 XSS 📚XSS: 검증되지 않은 외부 입력 값을 웹 응답에 그대로 반영하여 악의적 스크립트가 실행되는 취약점 → 사용자 브라우저에서 악성 코드가 동작해, 쿠키· 세션 등 민감 정보 탈취 가능 발생 원인 외부에서 입력된 사용자 입력 값을 검증하지 않고 그대로 응답에 반영 DB에 저장된 데이터를 읽어서 출력할 때 ...
🔒 시큐어 코딩 수업 정리 클라이언트 서버 구조 📚Client: 사용자 인터페이스(UI)를 제공, 사용자의 요청(예: 브라우저, 모바일 앱)이 발생하는 프론트엔드 부분 📚Server: 클라이언트의 요청을 처리하고 필요한 데이터를 생성하거나 제공하는 백엔드 시스템 통신방식: 웹 환경에서 클라이언트와 서버는 주로 HTTP/HTTPS 프로토...
🔒 시큐어 코딩 수업 정리 Command Injection 📚Command Injection: 사용자 입력값이 적절한 검증 없이 시스템 명령어의 일부로 사용될 때 발생하는 보안 취약점 💡발생 원인 운영체제 명령을 실행하는 함수를 사용하는 경우 검증되지 않은 사용자 입력 값이 명령이나 명령의 파라미터로 사용되는 경우 운영체제별 명령...
🔒 시큐어 코딩 수업 정리 SQL Injection 📚SQL Injection: 웹앱에서 입력 받아 DB로 전달하는 정상적인 쿼리(CRUD)를 변조, 삽입하여 데이터베이스에 불법적인 데이터 열람, 시스템 명령 수행 등 비정상적인 데이터 베이스에 접근하는 기법 모든 종류의 DBMS(Database Management System)에 적용 가능한...
🔒 시큐어 코딩 수업 정리 ORM 프레임워크 📚ORM: 객체 지향 언어의 객체와 관계형 데이터베이스의 테이블 간 데이터를 자동으로 매핑하는 기술 ✅ORM 필요성: 불일치 문제 해결: 객체 모델과 스키마 간 불이치 해소 개발 생산성 향상: SQL 직접 작성 부담 감소, 코드 간결화 유지보수성 및 보안 강화: 데이터베이스 접근 추상화로 ...