일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 자바의정석
- 이것이자바다
- springboot
- CRUD
- 게시판만들기
- 정처기예상문제
- 자바의정석요약
- java
- 코딩테스트
- 정보처리기사필기
- 정처기
- 정보처리기사
- 소프트웨어설계
- 어노테이션
- 게시판프로젝트
- 파이선
- 스프링부트
- 게시판
- 자바
- spring
- 스프링
- PYTHON
- 파이썬
- 정처기설명
- CRUD구현
- 소프트웨어개발
- 정처기공부
- function
- 정처기필기
- 프로그래머스
- Today
- Total
Helmi
서블릿이란? 본문
서블릿(Servlet)
- Server + Applet 합성어. 서버에서 실행되는 Applet.
즉, 자바를 이용하여 웹에서 실행되는 프로그램을 작성하는 기술
- 자바 클래스 형태의 웹 애플리케이션.
- 브라우저 통해 자바 클래스 실행되게 하기 위해 javax.servlet.http 패키지에서 제공하는 HttpServlet 클래스 상속받아 구현함.
- 서블릿 클래스 : HttpServlet 클래스를 상속받아 만든 서브 클래스
서블릿 또한 자바 프로그램의 다른 클래스들처럼 자바 가상머신 JVM에서 동작해야 하므로 클래스 파일이 생성되어야 함. 그래서 클래스 형태로 작성.
- HttpServlet은 웹서비스가 가능한 웹 애플리케이션을 제작 할 수 있도록 자바 확장해 놓은 클래스, 톰캣 설치시 제공 됨.
-웹 프로그래밍에서 가장 중요한 것은 클라이언트가 어떻게 서버에 요청하는지 아는 것.
클라이언트는 서버에 get과 post 두 가지 방식 중 하나로 요청 함.
전송 방식 | 설명 |
get | 주소 창 타고 넘어감. 서버로 보내는 데이터를 사용자가 그대로 볼 수 있음. 보안에 취약, 255자 이하 적은 양 데이터 전송 |
post | html header 타고 넘어가므로 보안에 강함. 255자 이상 대용량 데이터 전송 |
get방식으로 요청하면 doGet()호출되고 post 방식으로 요청하면 doPost()호출 됨.
<form>태그 통해 서버에 무엇인가 전달 혹은 요청 함
<form action="CallServlet" //요청할 서블릿
<input type = "submit" value="전송">
//클릭하면 submit 서블릿이 요청 됨
</form>
action 속성값 : 요청 서블릿 이름 기술.
전송 버튼 눌리는 순간 action 속성 값에 지정된 서블릿이 요청 됨.
<form method="get" action="CallServlet"
<input type = "submit" value="전송">
</form>
<form method="post" action="CallServlet"
<input type = "submit" value="전송">
</form>
method 속성 값: get 혹은 post 방식 기술
method 속성 생략 시, 기본 값 get 방식으로 전송 됨.
HTML의 <a> 태그 사용해서 링크 걸어 주면 서블릿은 get방식으로 요청한 것으로 인식
이렇게 하이퍼 링크 통해 서버 요청되는 경우에는 무조건 get 방식
<a href ="CallServlet"> get 방식 요청 </a>
주소 입력란에 직접 서블릿 요청 위한 URL 입력해도 get 방식으로 요청한 것으로 인식
요청에 대한 처리 위한 doGet(), doPost() 메소드는 어떤 요청 왔냐 따라 둘 중 하나 호출되는 것 빼면 형태 완전 동일.
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
)
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
)
자세히 보면,
public void doGet(
HttpServletRequest request, //요청 처리
HttpServletResponse response) //응답 처리
throws ServletException, IOException { //예외 처리
)
get방식은 서버로 데이터 전송될 때 주소창 타고 넘어가므로 보안에 취약, 그러므로 서버가 데이터 전송될 때 주소창 타고 넘어가르모 보안에 취약. 그래서 get or post 선택 할 수 있는 일반적인 폼에서는 post 방식 사용하는 것이 일반적
'JSP' 카테고리의 다른 글
JSP를 이용해서 간단한 회원가입 만들기(db:mysql) (1) | 2024.11.29 |
---|---|
서블릿 동작 원리 (0) | 2023.06.13 |
서블릿 클래스 정의 (0) | 2023.06.12 |
서블릿 기초 (1) | 2023.06.11 |
JSP란? (0) | 2023.06.10 |