JSP 주요 메소드- request.getParameter, request.getCharacterEncoding, response.sendRedirect, 요청메세지 - get, post, 응답메세지

2019. 4. 26. 17:43웹(JSP)

--------------------------------JSP---------------------------------


JSP에 사용되는 빌트인 객체의 메소드 
            - request.getParameter("값")
                        값을 받아오는 메소드

            - request.getParameterValuese("값")


            - request.getCharacterEncoding("utf-8")
                        값을 새로 utf-8로 인코딩한다.
                        주의사항! getParameter전에 꼭 해야만 된다.

            - response.sendRedirect("jsp파일")
                        브라우저에게 재요청할 URL을 응답으로 보낸다.
                        사용할때, insert, update, delete작업을 하고 마지막은 sendRedirect를 해야한다. 93, 65페이지 참고
            

요청메시지
            요청라인과 요청메세지(요청라인 + 요청메세지 = 요청헤더), 요청바디로 구성되어있다.

            - 요청 헤더
                        - 요청라인
                        (Get 방식) 
                                    - 주소창에 주소를 직접입력해서 요청하는경우
                                    - 링크를 클릭하는 경우
                                    - form method="get" 으로 설정한 다음 제출버튼을 누른경우
                                    - 서버로부터 동적 컨텐트를 요청할 때 사용한다.
                                    - 특징
                                                - URL주소 끝네 ?을 붙이고 queryString형태로 요청 파라미터를 

                                                  보낼 수 있다.
                                                - 대용량의 데이터(혹은 파일)를 보낼 수 없다.
                                                - 보안에 좋지 않다.(요청 파라미터가 주소창에 노출된다.)
                                                - 요청메세지의 body부가 없다.
                                    - 요청 방식 : GET
                                    - 요청 URL : 예시) depts.jsp?did=10 (did=10은 요청파라미터이다)
                                    - 프로토콜 : HTTP/1.1
                                    입력 예시) GET depts.jsp?did=10 HTTP/1.1

                                    요청 : Client -> server
                                    데이터 : Client <- server


                        (Post 방식)
                                    - form method="post" 로 설정한 다음 제출버튼을 누른경우
                                    - 사용자가 입력폼에 입력한 데이터를 서버로 보내서 저장/변경할 때 사용한다.
                                    - 특징
                                                - 요청메세지의 body부가 있다.
                                                - 대용량의 데이터(혹은 파일)를 보낼 수 있다.
                                                - 보안에 좋다.(입력값(요청파라미터값)이 요청메시지의 body에 담겨서 

                                                  전달된다.
                                    - 요청 방식 : POST
                                    - 요청 URL : 예시) add.jsp
                                    - 프로토콜 : HTTP 1.1
                                    입력 예시) POST add.jsp HTTP/1.1

                                    요청 : Client -> server
                                    데이터 : Client -> server 

※. 요청방식이 get일경우에 body가 없어도 되며update및 uploade가 안된다.   그래서 update나 uploade를할때 Post방식을 쓴다.


             - 요청라인 (클라이언트에 대한 부가정보)
                                    - Accept - language : kr, ko  --> 언어민 국가
                                    - Accept : text/html/text/xml
                                    - user-agent : mozil  --> 브라우저 정보
            
                        ※. 요청헤더와 요청바디의 사이에 빈줄 하나로 구분된다.

            - 요청 바디 (POST방식일때만 있다.)
                        - name value 형식으로 써있다.
            
※. 요청객체에 요청메세지의 모든 정보가 있다. get~~로 다 뽑을 수 있다.


응답메세지
            - 응답 헤더
                        - 응답라인
                                    프로토콜 : HTTP/1.1
                                    HTTP응답코드 : 200
                                    HTTP응답메세지 : OK

                                    작성 예시 ) HTTP/1.1 200 OK

                        - 응답헤더정보
                                    Content-Type:test/html
                                    Contend-Length:2400  --> 2400사이즈
                                    Content-lan:ko


            - 응답 데이터
                        - JSP로 작성한 동적 컨텐츠 (JSP코딩 파일)

※. 응답객체에 응답메세지의 값이 다 들어있다.





상대경로와 절대경로

            절대경로 : "/"로 시작하는 링크, 맨처음부터 다시 시작하는 경로
                        ex) /main/list.jsp

            상대경로 : 절대경로를 제외한 나머지
                        현재 url을 기준으로 + 형식으로 이동하는것
                        ex) ../main.jsp