현재
[JSP] get, post, QueryString, form 및 데이터 전송 본문
파일위치 : webapp/a1.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
String a = request.getParameter("a");
String b = request.getParameter("b");
String c = request.getParameter("c");
System.out.println(a);
System.out.println(b);
System.out.println(c);
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
a1입니다.
<a href="./a2.jsp">a2로 이동!</a>
</body>
</html>
웹브라우저의 url에서 ?a=10&b=10 과 같이 변수값을 지정해 줄 수 있다.
파일위치 : webapp/a2.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
a2입니다.
<!-- 링크는 무조건 get 방식이다. 강한주석은 %라는데용 -->
<a href="./a3.jsp?name=qwer">a3로 이동1!</a>
<a href="./a3.jsp?name=333&page=3">a3로 이동2!</a>
<a href="./a3.jsp?name=eeee&page=4">a3로 이동3!</a>
<br>
<!--
get : 쿼리 스트링이 URL에 ?뒤에 붙는다.
단점 : 링크이다 보니 쿼리스트링 길이에 제한이 존재한다.
장점 : 사실상 영어, 특수문자를 제외하고 전송이 규칙상 불가능?
post: 쿼리 스트링이 http의 헤더에(숨겨서) 붙는다.(사실상 대부분은 post방식이 좋다.)
장점 : 쿼리스트링 길이 제한이 없다.
언어제한이 없다.
!결과적으로 form활용시 왠만하면 post방식을 사용하자.!
get을 쓰는경우 : !검색! <- 만약 보안상 데이터 노출이 문제가 없고, 링크(URL)의 공유가 의미가 있는 경우
-->
<!-- form태그 활용시 get,post.. 으로 파라메터를 전달할 수 있다 -->
<!-- form 태그로 꼭 묶어줘야한다. 묶고나면 속성이 있어야한다.! why? -->
<!-- method로 방식 지정안해주면 기본으로 받는 방식 get,받는건 get이나 post나 차이는없다.-->
<form action="./a3.jsp" method="get">
<!-- 속성 name은 전송을 위해서 무조건 지정이 되어있어야한다 -->
name: <input name="name" type="text"><br>
page: <input name="page" type="number"><br>
<!-- 전송할려는 태그는 <button> 이나 input type="submit" 사용 -->
<!-- <input type="submit" value="transmit"> -->
<button>transmit</button>
</form>
</body>
</html>
파일위치 : webapp/a3.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
//사실상 백엔드 코드
request.setCharacterEncoding("utf-8"); // 필수코드
String name = request.getParameter("name");
String p = request.getParameter("page");
System.out.println("name: " + name);
System.out.println("page: " + p);
%>
<%-- <%안에있는 코드는 사실상 Servlet코드이다. --%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
a3입니다.
<a href="./a1.jsp">a1로 이동!</a>
</body>
</html>'웹 프로그래밍 > JSP' 카테고리의 다른 글
| [JSP] Cookie (0) | 2023.10.18 |
|---|---|
| [JSP] tomcat 저장공간 Application, Session, Request, Page (2) | 2023.10.18 |
| [JSP] forward, redirect (0) | 2023.10.18 |
| [JSP] include, header, footer (0) | 2023.10.18 |
| [JSP] 지시자 및 기본 주석처리 (0) | 2023.10.18 |