1. 자바스크립트 / DOM
DOM
- HTML 태그들을 자바스크립트가 이해할 수 있는 객체 형태로 바꾼 것.
- <body> 아래 <div> 아래 <p>처럼 트리 구조로 되어 있어서
자바스크립트가 이 태그들을 찾아가서 수정하거나 읽을 수 있음.
2. 스프링 / 스프링부트
의존성 주입(DI)
- 객체를 가져다 쓰는 방식.
- 필드 주입보다 생성자 주입을 쓰는 것이 좋다.
이유: 나중에 수정하거나 관리하기 쉬움.
AOP 로깅
- 메서드 실행 전/후에 로그 찍기.
- @Before: 메서드 실행 “직전”에 로그
- @After: 메서드 실행 “직후”에 로그
세션 상태 관리
- stateless: 세션을 아예 저장하지 않음(JWT 같은 방식에서 사용)
- stateful: 세션을 사용함
- if_required: 필요할 때만 세션 생성
- never: 새로운 세션은 만들지 않지만 이미 존재하면 사용
3. MyBatis / Mapper
@Mapper
- DB에서 데이터를 가져오기 위한 인터페이스에 붙임.
- Spring Security 전용 Mapper는 없어서 직접 만들어야 함.
@Select 예시 (읽기 기능 READ)
- username으로 유저 정보 조회
("SELECT username, password, writer, role FROM backend_spring_project.user WHERE username = #{username}") User findByUsername(String username);
@Service
- 서비스(비즈니스 로직)를 담당하는 클래스에 붙임.
- 컨트롤러가 “데이터 처리 좀 해줘”라고 하면, 실제 처리하는 부분.
@Controller
- 웹 요청을 받고 JSP 같은 화면(View)을 반환할 때 사용.
- return 값이 보통 JSP 파일 경로.
@RestController
- @Controller + @ResponseBody 합친 것.
- 뷰(JSP)를 주는 게 아니라 JSON 같은 데이터 자체를 반환함.
- API 만들 때 가장 많이 사용.
@RequestBody
- 프론트가 보내는 JSON 데이터를 자바 객체로 변환해서 받는 역할
- POST / PUT 할 때 데이터 받을 때 많이 씀.
@PostMapping("/login")
public String login(@RequestBody User user) {
}
@Autowired
- 빈을 가져다 사용할 때 붙임
- 서버를 on 하면 {} 안의 내용이 실행
4. JSP / Servlet
JSP
- 자바 + HTML + CSS를 연결해서 화면을 만들 때 사용.
JSTL 쓸 때 필요한 선언
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
- c:choose, c:when, c:otherwise 같은 기능적인 태그를 쓰기 위해 필요.
Servlet
- MVC에서 모델과 뷰를 이어주는 역할
- 즉, JSP와 백엔드 사이 연결다리
로그인 흐름
뷰(JSP) → 컨트롤러 → 서비스 → DB
5. HTTP 메서드 정리
메서드의미
| POST | 회원가입처럼 데이터 “생성” |
| GET | 화면 표시, 데이터 읽기 |
| PUT | 데이터 수정 |
| DELETE | 데이터 삭제 |
'프론트&백엔드 개발' 카테고리의 다른 글
| SpringBoot 환경설정 (0) | 2025.11.04 |
|---|