1. servlet이란?
자바를 활용하여 동적으로 웹페이지를 생성하는 서버측 프로그램이다.
간단히, 홈페이지 로그인을 했을때 바뀐 이미지가 나오는걸 생각하면 된다.
2. jsp란?
웹 서버에서 동적으로 웹페이지 생성해서 돌려준다.
간단한 예제
index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style type="text/css">
div{
width: 400px;
text-align: center;
}
span{
cursor: pointer;
}
</style>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>
</head>
<script type="text/javascript">
$(document).ready(function(){
$('span').click(function(){
$('input').val('');
})
});
</script>
<body>
<div>
<h2>상품을 등록 해 주세요.</h2>
<form action="Mainservlet.do" method="get">
<table>
<tbody>
<tr>
<td>상품명:</td>
<td><input type="text" name="pname"></td>
</tr>
<tr>
<td>상품가격:</td>
<td><input type="text" name="pprice"></td>
</tr>
<tr>
<td>상품 설명:</td>
<td><input type="text" name="pdec"></td>
</tr>
</tbody>
</table>
<button type="submit">전송</button>
<span>취소</span>
</form>
</div>
</body>
</html>
버튼 클릭 시 mainservlet.do를 찾아서 form값 전달
<form action="Mainservlet.do" method="get">
Mainservlet.java
package servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/Mainservlet.do")
public class Mainservlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public Mainservlet() {
super();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setAttribute("pname", request.getParameter("pname"));
request.setAttribute("pprice", request.getParameter("pprice"));
request.setAttribute("pdec", request.getParameter("pdec"));
request.getRequestDispatcher("result.jsp").forward(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
}
jsp로 넘겨주기 위해 데이터를 가공
request.setAttribute("pdec", request.getParameter("pdec"));
result.jsp로 값을 넘겨준다
request.getRequestDispatcher("result.jsp").forward(request, response);
result.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>
<style type="text/css">
table{
width: 200px;
border-collapse: collapse;
border: 1px solid black;
}
tr, td{
border: 1px solid black;
}
</style>
</head>
<body>
<div>
<h2>상품을 등록 해 주세요.</h2>
<table>
<tbody>
<tr>
<td width="70">상품명:</td>
<td><%=request.getAttribute("pname") %></td>
</tr>
<tr>
<td width="70">상품가격:</td>
<td><%=request.getAttribute("pprice") %></td>
</tr>
<tr>
<td width="70">상품 설명:</td>
<td><%=request.getAttribute("pdec") %></td>
</tr>
</tbody>
</table>
</div>
</body>
</html>
이 부분이 값을 받아오는 부분
<td><%=request.getAttribute("pname") %></td>
'웹 > 백엔드, Spring' 카테고리의 다른 글
[Java] Spring과 SOLID - 1편 (1) | 2021.07.19 |
---|---|
[간단한 게시판 만들기] - 3. 게시글 쓰기 (0) | 2020.10.19 |
[간단한 게시판 만들기] - 2. 로그인 기능( 세션, 쿠키 설정) (0) | 2020.10.17 |
[간단한 게시판 만들기] - 1. DB연동 (0) | 2020.10.17 |
[활용] Servlet, 싱글 파라미터 넘기기 (0) | 2020.09.18 |