Spring, MyBatis 란?
ChatGPT의 말:
Java로 웹 애플리케이션을 개발할 때 자주 사용하는 Spring과 MyBatis는 각각의 역할이 명확한 프레임워크입니다. 아래에 정리해드릴게요.
✅ Spring Framework란?
Spring은 Java 기반의 엔터프라이즈 애플리케이션 개발을 위한 오픈소스 프레임워크입니다.
🔹 주요 특징
특징 | 설명 |
---|---|
제어의 역전(IoC) | 객체 생성과 의존성 주입을 프레임워크가 담당 |
관점 지향 프로그래밍(AOP) | 로깅, 트랜잭션 등의 공통 기능을 분리 |
모듈화된 구조 | 필요한 기능만 선택적으로 사용 가능 |
Spring MVC | 웹 애플리케이션용 MVC 아키텍처 제공 |
Spring Boot | Spring 설정을 자동화해 빠르게 애플리케이션 개발 가능 |
🔹 구조 예시
[Controller] → [Service] → [Repository] → [DB]
↑ ↑ ↑
Spring이 관리하는 객체들 (DI로 주입)
✅ MyBatis란?
MyBatis는 SQL을 직접 작성하여 DB와 Java 객체를 연결해주는 ORM(Object Relational Mapping) 프레임워크입니다.
🔹 주요 특징
특징 | 설명 |
---|---|
SQL을 직접 작성 | 복잡한 쿼리를 자유롭게 제어 가능 |
Mapper XML | SQL을 XML 파일에 정의 |
간단한 설정 | JPA보다 간단하고 가볍게 시작 가능 |
Result Mapping | DB 결과를 Java 객체로 자동 매핑 |
🔹 예시 코드
▫️ Mapper XML
<select id="selectUser" resultType="User">
SELECT * FROM users WHERE id = #{id}
</select>
▫️ Java Interface
public interface UserMapper {
User selectUser(int id);
}
▫️ 호출
User user = userMapper.selectUser(1);
✅ Spring + MyBatis 함께 쓰는 이유
- Spring이 애플리케이션 구조와 의존성 관리를 담당하고,
- MyBatis가 데이터베이스 접근을 유연하게 처리합니다.
🔹 조합 예시
[Spring Controller]
↓
[Spring Service]
↓
[MyBatis Mapper (인터페이스)]
↓
[DB]
이 조합은 특히 공공기관 시스템, 기업의 백엔드 시스템에서 널리 사용됩니다.
'전자정부 프레임워크 공부' 카테고리의 다른 글
Tomcat은? [전자정부 프레임워크] (0) | 2025.05.16 |
---|---|
Eclipse는? [전자정부 프레임워크] (0) | 2025.05.16 |
Maven이란? [전자정부 프레임워크] (0) | 2025.05.16 |
Java란? [전자정부 프레임워크] (1) | 2025.05.16 |
전자정부 프레임워크는? (0) | 2025.05.16 |