일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- CNN
- 파이썬라이브러리
- 컴퓨터구조
- 혼공머신
- 정수와유리수
- 텍스트마이닝
- 데이터입출력구현
- 정보처리기사실기
- 중학수학
- 자바 실습
- 자바
- 영어공부
- 파이썬
- html/css
- JSP/Servlet
- numpy/pandas
- 머신러닝
- SQL
- CSS
- 정보처리기사필기
- 컴퓨터비전
- 운영체제
- 코딩테스트
- C++
- pandas
- 딥러닝
- 중학1-1
- 연습문제
- 데이터베이스
- 데이터분석
- Today
- Total
클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지
서블릿의 기초 11 - 단원 마무리 퀴즈 문제 풀기 본문
이 단원의 퀴즈 문제는 굉장히 많다. 20 문제도 넘지만 열심히 풀어보려고 한다.
퀴즈로 정리합시다
틀린 문제 및 보충할 문제 풀어보기
1번
우선 객체가 생성되면서 init() 메소드가 단 한번 호출된다. init() 메소드에서는 주로 초기화 작업을 한다. 그 후에는 클라이언트의 요청이 있을 때 doGet() 혹은 doPost() 메소드가 실행된다. 여러 클라이언트가 동시에 요청을 하더라도 스레드가 생성되므로 동시에 doGet() 혹은 doPost() 메소드가 실행되기 때문에 수행 속도가 빠르다.
서블릿이 더 이상 서비스를 하지 않을 경우 destroy() 메소드가 호출되는데, 예를 들면 서블릿 컨테이너가 종료(톰캣을 재가동)되거나 서블릿 내용이 변경되어 재 컴파일해서 클래스 파일이 바뀌는 경우이다.
2번
클라이언트에게 전송할 메시지 중 한글 깨짐을 방지하기 위한 방법
response.setContentType("text/html; charset=UTF-8"); 혹은 response.setCharacterEncoding("UTF-8");
입력 폼에서 입력된 한글을 깨지지 않도록 하는 방법
get 방식일 경우, 서버 설정 파일인 server.xml 파일에서 첫 번째 등장하는 <Connector> 태그를 찾아서 URIEncoding 속성을 추가해야 한다.
post 방식일 경우, request.setCharacterEncoding("UTF-8");
3번
개발자가 서블릿 이름을 바꾸더라도 사용자는 동일한 URL로 접근할 수 있도록 하기 위해서이다.
4번
Servlet의 멤버 변수는 Servlet의 객체 생성시 메모리 영역을 할당하므로 한 번 할당된 Servlet의 멤버 변수는 Servlet 객체가 메모리에서 해제될 때까지 유효하다. 요청시 마다 할당되는 것이 아니다.
5번
Servlet은 PHP나 ASP와 달리 스레드(Thread)를 근간으로 하므로, 요청이 올 때마다 새로운 프로세스를 생성하지 않는다. 이런 특징으로 인해 서버의 자원을 보다 효율적으로 운영할 수 있어 성능 향상을 이룰 있다.
6번
Javascript는 웹 애플리케이션의 클라이언트 측 자바 기술입니다. HTML의 정적인 페이지에 동적인 기능을 부여하는 기술이다. 나머지는 모두 서버 측 기술이다.
8번
Apache 웹 서버의 환경 설정 파일은 httpd.conf 입니다. server.xml은 Tomcat 서버의 환경 설정 파일이며 log4j.xml은 Log4J 툴의 환경 설정 파일이다. build.xml은 Ant 툴의 환경 설정 파일이다.
11번
- action
- 폼 데이터가 제출될 URL을 지정한다.
- 예: <form action="/submit_form">
- method
- 폼 데이터를 전송할 HTTP 메서드를 지정한다. GET 또는 POST 중 하나를 사용할 수 있다.
- 예: <form method="post">
- enctype
- 폼 데이터를 서버로 보낼 때 인코딩되는 방식을 지정한다. 파일 업로드가 포함된 폼에서는 multipart/form-data를 사용해야 한다.
- 예: <form enctype="multipart/form-data">
- target
- 폼 제출 후 서버의 응답을 어디에 표시할지를 지정한다.
- 예: <form target="_blank"> (새 탭에서 열기), _self (현재 탭), _parent (부모 프레임), _top (전체 창)
- name
- 폼의 이름을 지정한다. 자바스크립트나 다른 클라이언트 스크립트에서 폼을 참조할 때 사용된다.
- 예: <form name="myForm">
하지만 value 속성은 <form> 태그의 속성이 아니라, 폼 내부의 입력 요소들 (예: <input>, <textarea>, <button>, <select>)에 사용되는 속성이다. value 속성은 사용자가 입력 필드에 입력한 값을 지정하거나 기본값을 설정하는 데 사용된다.
예를 들어:
<input type="text" name="username" value="기본값">
20번
JSP는 요청시마다 Servlet으로 변환되는 것이 아니며 JSP가 변환되어 생성된 Servlet은 JSP가 수정될 때까지 한 번 변환된 Servlet이 계속 사용된다.
나머지 몇 개의 문제가 더 틀렸지만 이건 단답식으로 암기해야 하는 부분이라 해설을 쓸 게 없었다.
학습을 마치고
틀린 문제가 얼마나 많았는지 모른다. 1장에서도 그랬는데 절반도 못 맞추었고, 2장은 정확하게 딱 반타작을 했다. 책을 참고하면서 풀었는데도 그런다. 보지 않고 풀면 아마 10점도 못 맞았을 것 같다.
그래도 문제를 풀면서 내 실력을 알게 되고 더 많은 것들을 배울 수 있어서 정말 좋았다. 공부에 흥미도 느끼게 되고..
'웹 · 앱 개발 > JSP & Servlet' 카테고리의 다른 글
JSP 기본 다루기 1 - JSP로 시작하는 웹 프로그래밍 (0) | 2024.08.26 |
---|---|
서블릿의 기초 12 - 회원 가입 페이지 작성하는 도전 문제 풀어보기 (0) | 2024.08.26 |
서블릿의 기초 10 - 여러 가지 형태의 폼 작성하는 실습 (0) | 2024.08.26 |
서블릿의 기초 9 - get 방식과 post 방식에서 한글 입력 처리 (0) | 2024.08.25 |
서블릿의 기초 8 - 쿼리스트링으로 값 받아오기 및 유효성 체크하기 (0) | 2024.08.25 |