[Java / JDBC] Statement VS PreparedStatement - 보안·성능·JPA 관점
·
Backend/Java
1. 시작하며백엔드 개발을 하다 보면 DB와의 통신은 피할 수 없는 핵심 영역입니다.그 중심에는 항상 JDBC(Java Database Connectivity) 가 존재하고, JDBC를 통해 SQL을 실행할 때 가장 기본적으로 접하게 되는 객체가 바로 다음 두 가지입니다.StatementPreparedStatement둘 다 SQL을 실행하는 역할을 하지만,보안성능유지보수성실무 활용성측면에서 매우 큰 차이가 존재합니다.이번 글에서는 단순 문법 비교를 넘어서,JDBC 내부 동작 관점SQL Injection이 발생하는 구조적 이유DB 실행 계획(Execution Plan) 관점의 성능 차이Connection Pool, JPA와의 관계까지 실무 기준으로 깊이 있게 정리해보겠습니다.2. JDBC에서 SQL이 실행..