📘 JSP와 Document 객체의 관계 정리
🧩 Document란?
서버(JSP)가 HTML + JavaScript 코드를 만들어 브라우저로 보내면,
브라우저는 HTML 문서를 DOM(Document Object Model) 구조로 메모리에 올립니다.
이때,
자바스크립트는 document 객체를 통해 이 DOM 구조에 접근할 수 있습니다.
💡 정리:
document는 자바스크립트가 HTML 구조에 접근하기 위해 필요한 객체입니다.
💻 JSP와 Document의 관계
| JSP | 서버 측에서 실행되는 코드로, HTML을 생성하여 클라이언트(브라우저)에 전달 |
| Document | 클라이언트(브라우저)에서 실행되는 JavaScript 객체로, HTML 문서(DOM)에 접근할 때 사용 |
즉, JSP는 화면을 만드는 쪽(서버),
Document는 그 화면을 조작하는 쪽(클라이언트) 이라고 볼 수 있습니다.
📄 Document 예시
🧠 사용 예시
🔍 각 접근 방법 설명
✅ 방법 ① document.formName.inputName.value
- 형식: document.formName.inputName.value
- 의미: name="formName" 인 <form> 안에 있는
name="inputName" 인 <input> 요소의 값을 가져온다. - 예시:
-
document.loginForm.userId.value; // "limhyun"
✅ 방법 ② document.forms[] 배열 접근
- 형식: document.forms["폼이름"].elements["입력요소이름"].value
- 예시:
-
document.forms["loginForm"].elements["userId"].value;
- 명시적이고 안전한 방법.
폼 이름이 중복되거나 DOM 구조가 복잡해도 정확하게 접근 가능.
✅ 방법 ③ document.getElementById("id")
- 형식: document.getElementById("요소id").value
- 예시:
-
document.getElementById("userId").value;
- 가장 일반적이고 표준적인 방식.
현재는 이 방식이 권장됩니다.
🧾 정리 표
| 방법 ① | document.formName.inputName.value | 고전 방식, 빠르지만 name 중복 시 문제 가능 |
| 방법 ② | document.forms["formName"].elements["inputName"].value | 명시적이고 안정적 |
| 방법 ③ | document.getElementById("id").value | 현대적 표준 방식, 유지보수 용이 |
💬 결론
- document 객체는 HTML 문서(DOM)에 접근하기 위한 자바스크립트의 시작점
- JSP는 HTML을 만들어 브라우저로 보내는 서버 역할,
Document는 그 HTML을 제어하는 클라이언트 역할 - 최신 개발에서는 document.getElementById() 나 querySelector() 같은
표준 DOM 접근 방식을 사용하는 것이 가장 바람직합니다.
📌 한 줄 요약
document는 브라우저가 HTML 문서를 메모리에 올려둔 “DOM”에 접근하기 위한 자바스크립트 객체이며,
JSP가 생성한 HTML을 제어·조작할 때 반드시 필요한 연결 다리입니다.
'SpringBoot > 공부' 카테고리의 다른 글
| [Eclipse] JWT 토큰 발급 및 검증하기 (Maven, java 1.8) (0) | 2025.10.02 |
|---|---|
| [SpringBoot] 컨트롤러 API 테스트 (@WebMvcTest, MockMvc) (0) | 2025.02.02 |
| [SpringBoot]junit5에서 junit4로 변경 (0) | 2023.12.18 |
| [SpringBoot] spring-boot-devtools 라이브러리 사용 방법 (0) | 2023.12.14 |
| [SpringBoot] 프로젝트 생성 시 run 오류 (0) | 2023.12.13 |


