본문 바로가기
국비 학원 가서 개발새발

국비학원 25일차) JSP & 서블릿

by 휴일이 2022. 11. 3.

 

 

JSP -> 스프링에서 view....보여주는 녀석

서블릿 -> 스프링에서 컨트롤러....옮겨주는 녀석

 

 

 

리퀘스트, 리스폰스 방식

get 방식 ) URL에 직접 값을 넘겨받는 형식, 보안에 좋지 않음. 클릭해서 넘어가는 요청에 적당

post 방식 ) <head>가 아니라 <body>로 값을 옮겨서 URL에서 보이지 않게 숨겨준다, 회원가입 같은 거에 적당하다

 

 

 

 

jsp

 

<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>

<script type="text/javascript">

function friendCheck() {
	
	var genderTxt = document.friendForm.gender;
	var friendTxt = document.friendForm.friend;
	var kostaTxt = document.friendForm.kosta;
	var flag=true;
	
	for(i=0;i<genderTxt.length;i++) {
		if(genderTxt[i].checked) {
			flag=false;
			break;
		}
	}
	
	if(flag) {
		alert("성별 체크해주세요");
		return false;
	}
	
	if(friendTxt=="") {
		alert("기수 체크해주세요");
		kostaTxt.value="";
		kostaTxt.focus();
		return false;
	}
	var flag1=window.isNaN(kostaTxt.value);
	if(flag1){
		alert("숫자 입력하세요");
		return false;
	}
	
	var flag2 = true;
	for(i=0;i<friendTxt.length;i++) {
		
		if(friendTxt[i].checked) {
			flag2=false;
			break;
		}
		
	}
	if(flag2) {
		alert("사진을 체크하세요");
		return false;
	}
	
}


</script>


</head>
<body>

	<form name="friendForm" method="get" action="MultiServlet" onsubmit="return friendCheck()")>
	<input type="radio" name="gender" value="남">남<br>
	<input type="radio" name="gender" value="여">여<br>
	
	기수 <input type="text" name="kosta"><br>
	<input type="checkbox" name="friend" value="b">홍길동<br>
	<input type="checkbox" name="friend" value="lee">장동건<br>
	<input type="checkbox" name="friend" value="m">마동석<br>
	<input type="submit" value="전송">
	</form>
</body>
</html>

 

 

 

 

서블릿

 

package step7;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class MultiServlet
 */
@WebServlet("/MultiServlet")
public class MultiServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public MultiServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		response.setContentType("text/html; charset=utf-8");
		PrintWriter out = response.getWriter();
		
		String[] fri = request.getParameterValues("friend");
		String ff = "";
		for(String f : fri) {
			ff+=f;
			out.print("<img src=img/"+f+".jpg>");
			out.print("<hr>");
		}
		String gen = request.getParameter("gender");
		String kos = request.getParameter("kosta");
		
		out.print("칭구"+ff+"성별"+gen+"기수"+kos);
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

}

 

 

 

 

요새 스프링 공부하느라 그거만 붙잡고 있어서 기록이 대충대충이다ㅠㅠ

오류잡느라 힘들다..

728x90