: 객체와 관계형 데이터베이스의 데이터를 자동으로 매핑해주는 프로그래밍 기술
장점
데이터베이스 구조의 변경에도 대응할 수 있으며, 코드 재사용성과 유지 보수성이 높아짐'
단점
유연성이 떨어지고 자동으로 매핑을 처리하기 때문에 성능이 떨어짐(ORM을 사용하면 SQL 쿼리를 직접 작성하지 않으므로, 때때로 비효율적인 쿼리가 생성, 복잡한 쿼리나 최적화가 필요한 경우에는 직접 SQL을 작성하는 것이 더 효율적일 수 있다)
: 데이터베이스에서 직접 SQL 쿼리를 작성하여 데이터를 가져오는 방법
장점
데이터베이스에 대한 접근을 정확하게 제어할 수 있고, 성능이 좋음
단점
코드 가독성과 유지보수성, 많은 양의 코드로 생산성이 떨어짐
orm를 사용하는 것과 3가지방법을 사용해 sql injection을 예방하는 query문과 보안성은 크게 차이 나지 않지만 ORM은 SQL Injection을 예방하는 방법 중 하나일 뿐만 아니라 객체 지향 프로그래밍 패러다임에 맞게 개발이 가능하고 sql 쿼리 작성과 관리, 데이터베이스 스키마 변경등의 작업을 간편하게 수행이 가능해서 생산성이 높음