728x90 728x90 Java19 DocumentBuilderFactory를 이용한 안전한 XML 파싱과 XXE Injection 방지하기 # [Java XML] DocumentBuilderFactory를 이용한 안전한 XML 파싱과 XXE Injection 방지하기안녕하세요! 오늘은 Java에서 XML을 안전하게 파싱하고 XXE(XML External Entity) Injection 공격을 방지하는 방법에 대해 알아보겠습니다.목차DocumentBuilderFactory란?XML 파싱 기본 방법XXE Injection이란?안전한 XML 파싱 구현하기실전 예제 코드1. DocumentBuilderFactory란?DocumentBuilderFactory는 Java에서 제공하는 XML 파싱을 위한 기본 클래스입니다. XML 문서를 파싱하여 DOM(Document Object Model) 객체로 변환하는 역할을 합니다.DocumentBuilderF.. 2024. 11. 25. [Java; 자바] IntelliJ IDEA에서 Java 버전 변경하는 완벽 가이드 (New) IntelliJ IDEA에서 Java 버전 변경하는 완벽 가이드목차개요Java 버전 변경이 필요한 이유사전 준비사항Java 버전 변경 방법Project SDK 설정Module SDK 설정Gradle/Maven 프로젝트 설정문제 해결 가이드자주 발생하는 오류와 해결방법1. 개요IntelliJ IDEA에서 Java 버전을 변경하는 것은 개발자가 자주 마주치는 작업 중 하나입니다. 특히 여러 프로젝트를 동시에 진행하거나, 레거시 프로젝트를 유지보수할 때 Java 버전 관리는 매우 중요합니다. 이 가이드에서는 IntelliJ IDEA에서 Java 버전을 변경하는 모든 방법을 상세히 알아보겠습니다.2. Java 버전 변경이 필요한 이유프로젝트 요구사항 충족새로운 Java 기능 활용보안 업데이트 적용하위 호환성 유.. 2024. 10. 31. [Java; 자바] 빌드 도구 면접 완벽 대비 블로그 1. 빌드 도구란?흔히 빌드툴이라고 부르는 빌드 도구(Build Tool)는 소스 코드를 컴파일하고, 의존성을 관리하며, 배포 가능한 형태로 패키징 하는 역할을 하는 소프트웨어입니다. 자바 진영에서는 Maven, Gradle, Ant가 가장 대표적인 빌드 도구로 자리 잡고 있습니다.1.1 빌드 도구의 주요 기능컴파일: 소스 코드를 바이트코드로 변환.의존성 관리: 외부 라이브러리 및 모듈 관리.테스트: 자동화된 테스트 실행.패키징: JAR 또는 WAR 파일로 프로젝트 빌드.배포: 빌드된 파일을 특정 서버로 배포.2. 대표적인 빌드 도구 비교 2.1 Apache Maven주요 특징: XML 기반의 설정 파일(pom.xml)을 사용하여 프로젝트 설정.장점: 강력한 의존성 관리, 표준화된 빌드 생명 주기, 다양.. 2024. 10. 24. [Java; 자바] Java 오버로딩과 오버라이딩: 개념, 차이점, 그리고 스프링부트 활용 예제 Java에서는 동일한 이름의 메서드를 다양한 방법으로 사용할 수 있는 **오버로딩(Overloading)**과 상속 관계에서 상위 클래스의 메서드를 재정의할 수 있는 **오버라이딩(Overriding)**을 제공합니다. 이 두 개념은 객체지향 프로그래밍에서 중요한 역할을 하며, 코드의 유연성과 재사용성을 높이는 데 기여합니다. 이번 포스트에서는 오버로딩과 오버라이딩의 개념과 차이점을 살펴보고, 이를 이해하기 위한 예제를 통해 차근차근 알아보겠습니다. 더 나아가, 스프링부트(Spring Boot) 환경에서 이를 어떻게 활용할 수 있는지도 알아보겠습니다.1. 오버로딩(Overloading)이란?1.1 오버로딩의 정의오버로딩은 동일한 이름의 메서드를 매개변수의 타입, 개수, 순서를 다르게 하여 여러 개 정의하.. 2024. 9. 23. [Java; 자바] StringUtils / isBlank / isEmpty / org.apache.commons.lang3 / 공백 체크 / null 체크 StringUtils 란? https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/StringUtils.html StringUtils (Apache Commons Lang 3.14.0 API) Splits a String by Character type as returned by java.lang.Character.getType(char). Groups of contiguous characters of the same type are returned as complete tokens, with the following exception: the character of type Character.UPPERCASE_LET.. 2024. 1. 4. [Java; 자바] 초보자를 위한 자바 프로그래밍 기초 안내 - 03 반복문(Loop Statements) 저번 시간에 배운 조건문에 이어서 반복문에 대해 설명하겠습니다. 지난 글은 더 보기를 눌러 확인하세요. 더보기 https://daddydontsleep.tistory.com/entry/Java-%EC%9E%90%EB%B0%94-%EC%B4%88%EB%B3%B4%EC%9E%90%EB%A5%BC-%EC%9C%84%ED%95%9C-%EC%9E%90%EB%B0%94-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D-%EA%B8%B0%EC%B4%88-%EC%95%88%EB%82%B4-02 [Java; 자바] 초보자를 위한 자바 프로그래밍 기초 안내 - 02 오늘은 저번 시간에 이어 조건문에 대해 설명하겠습니다. 제가 개발을 하면서 가장 많이 쓰.. 2023. 12. 5. 이전 1 2 3 4 다음 728x90 728x90