완성은 아직 멀긴 했는데 발표 준비로 미리 써야될 것 같아서 한번 써본다.
기술 스택
1. 프레임워크 및 언어
- Java 17: 최신 LTS(Long Term Support) 버전의 Java를 사용하여 애플리케이션을 개발.
- Spring Boot 3.x: REST API 개발과 보안, 데이터 관리 등을 처리하는 기본 프레임워크.
- Spring Security: OAuth2 클라이언트 및 JWT 기반 인증 구현. 사용자 인증과 권한 관리를 담당.
- Spring Data JPA: 데이터베이스 접근을 위한 ORM(Object Relational Mapping) 기술을 사용하여, 엔티티와 데이터베이스 간의 매핑을 자동화.
2. 데이터베이스
- MySQL: 관계형 데이터베이스.
- JPA / Hibernate: Java Persistence API를 통해 MySQL과 연동하며, 자동으로 스키마를 생성 및 업데이트(
ddl-auto: update
) 함.
3. 보안 및 인증
- Spring Security + OAuth2: Google 및 Spotify OAuth2 소셜 로그인을 지원하며, OAuth2 클라이언트 설정이 구성되어 있음.
- JWT (JSON Web Token): 인증된 사용자에게 토큰을 부여하고, 이를 통해 REST API에 접근할 수 있도록 설정.
4. 클라우드 서비스
- Firebase Admin SDK: 파이어베이스의 기능을 백엔드에서 제어할 수 있도록 하며, 이를 통해 파일 업로드와 같은 기능을 구현.
5. 빌드 및 관리 도구
- Maven: 의존성 관리 및 빌드 도구로 사용되며,
pom.xml
에서 여러 의존성들을 관리. - Spring Boot Maven Plugin: 스프링 부트 애플리케이션을 패키징하고 실행하는 데 사용.
6. 프론트엔드
- JSP (Java Server Pages): 템플릿 엔진으로, 로그인 페이지와 같이 서버 사이드 렌더링을 처리함.
- CSS: 정적 리소스를 통해 프론트엔드 스타일을 설정.
- Webpack: 번들링을 위한 도구로, 프론트엔드 자바스크립트 파일을 관리.
7. 기타 라이브러리 및 도구
- Lombok: Java 코드에서 반복적인 Getter, Setter, Constructor 등을 간소화하기 위해 사용.
- Jakarta Servlet: Java 웹 애플리케이션의 서블릿 관리를 위한 API를 제공.
- java-jwt: JWT 토큰을 발행하고 검증하는 라이브러리.
- Tomcat Embed Jasper: JSP 파일을 컴파일하고 서블릿으로 변환하여 처리하는 엔진.
기술 정의서
이제 학원 갈 준비를 해야겠구만. ppt는 만들어도 따로 올리지 않을 예정이다.
'Coding History > project' 카테고리의 다른 글
Swagger와 비슷한~ Flask-restx 파이썬 프로젝트에 적용하기 (1) | 2024.12.01 |
---|---|
1차 개인프로젝트 발표. (중간 간담회) (8) | 2024.10.01 |
회원가입 로그인 로직 중, 중복 이메일 처리. (1) | 2024.09.26 |
[IDE-인텔리제이] java.lang.ClassCastException 오류 해결. (0) | 2024.09.26 |
sample DB 다시 설계 (1) | 2024.09.26 |