Java를 중심으로 개발환경 설정, 기본 문법, 객체지향 프로그래밍, 컬렉션, 예외처리, 파일 입출력, 스레드, 네트워크 및 소켓 통신까지 학습하며 백엔드 개발의 기초를 다졌습니다. Oracle에서는 DML, DDL, DCL, TCL, 서브쿼리, 조인, 집합 연산, 내장 함수, 제약조건, 인덱스, 시퀀스, 뷰, PL/SQL, 저장 프로시저를 학습해 데이터베이스 설계와 SQL 활용 역량을 키웠습니다. JDBC를 통해 Connection Pool, Statement/PreparedStatement/CallableStatement, ResultSet 처리, 트랜잭션 관리, DB 예외처리 등 자바와 데이터베이스 연동 방식도 익혔습니다.
프론트엔드 영역에서는 HTML5, CSS3, Bootstrap을 활용해 시맨틱 태그, 웹 접근성, Form Validation, 반응형 레이아웃(Flexbox, Grid), 컴포넌트 활용을 학습했고, JavaScript와 jQuery로 ES6+ 문법, DOM 조작, 이벤트 처리, AJAX, Promise, async/await, JSON 데이터 처리 등을 익혔습니다. React에서는 컴포넌트 기반 개발, state 관리, CRUD, React Router DOM, 스타일드 컴포넌트를 학습하며 동적인 UI 구성 방식을 경험했습니다.
웹 애플리케이션 구조 측면에서는 Servlet/JSP를 통해 서블릿 생명주기, Request/Response 처리, Session/Cookie 관리, Filter, Listener, EL, JSTL, 파일 업로드/다운로드, MVC 패턴, JSON/XML 처리 등을 학습했습니다. 또한 MyBatis의 설정 파일, XML 매퍼, 동적 SQL, Spring 연동, TypeHandler, 로깅과 예외처리를 익혔고, Spring Boot에서는 자동 설정, 의존성 관리, 외부 설정 파일, 프로필 분리 등을 학습했습니다. JPA에서는 엔티티 매핑, 연관관계, 영속성 컨텍스트, 지연/즉시 로딩, N+1 문제, 락, 캐시, 성능 최적화 등을 학습했으며, Spring Security와 JWT를 통해 인증·인가와 필터 체인 기반 보안 처리도 경험했습니다.
배포와 운영 측면에서는 AWS EC2, AMI, VPC, EBS, RDS, 네트워크 및 방화벽 설정, Linux 기본 명령어와 환경 설정을 학습했고, Docker, Docker Compose, Jenkins, GitHub Actions를 활용한 CI/CD 흐름도 익혔습니다. 이를 바탕으로 프로젝트에서는 주제 선정, 화면설계, DB 설계, 구현, 디버깅, 시연까지 전 과정을 팀 단위로 수행하며 웹 애플리케이션 개발 전반을 경험했습니다.
더보기