공부용

.jsp 변수 .java에서 조작하기 본문

2020.10 ~ 2021.03 취업성공패키지/홈페이지(JSP)

.jsp 변수 .java에서 조작하기

고딕짱! 2021. 3. 2. 22:01
//Auth.jsp
<form method="POST" action="/codestudy/member/login.do" id="form1">
                
                <div class="loginbox panel panel-default">
                    <div class="panel-heading">Auth</div>
                    <div class="panel-body">
                        <ul class="list-group">
                            <li class="list-group-item">
                                <input type="text" id="id" name="id" placeholder="ID" class="form-control" required>
                            </li>
                            <li class="list-group-item">
                                <input type="password" id="pw" name="pw" placeholder="Password" class="form-control" required>
                            </li>
                            <li class="list-group-item">
                                <button type="submit" class="btn btn-default">
                                    <span class="glyphicon glyphicon-lock"></span>
                                   	로그인
                                </button>
                            </li>
                        </ul>
                    </div>
                </div>
</form>

 

1. form 태그로 전송방식을 만들어준다 

<form method="GET/POST" action="url">

2. button type="submit" 으로 전송

******* 3. 전송할변수를 name으로 지어준다. (name="id" / name="pw")

 

package com.test.codestudy.member;

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;
import javax.servlet.http.HttpSession;

@WebServlet("/member/login.do")
public class Login extends HttpServlet {

	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		
		//1. 데이터 가져오기(id, pw)
		//2. DB 작업 > select(등록된 회원이 맞는지 확인)
		//3. 결과 처리
		
		//1.
		String id = req.getParameter("id");
		String pw = req.getParameter("pw");
		
		//2.
		MemberDAO dao = new MemberDAO();
		MemberDTO dto = new MemberDTO();
		
		dto.setId(id);
		dto.setPw(pw);
		
		int result = dao.login(dto); //1 or 0
		
		
		//3.
		if (result == 1) {
			//로그인 성공
			//인증(Authentication), 허가(Authorization)
			
			//회원 인증 -> 영구 보관(적어도 사이트에 머무르는 동안..)
			// -> 저장 공간 + 상태 유지 -> 전역(사이트 전체) + 개인 -> 세션
			
			//*** 로그인을 성공했다는 사실을 세션에 저장

			//서블릿에서 세션을 접근하는 방법
			HttpSession session = req.getSession();
			
			//session.setAttribute("login", true);
			session.setAttribute("id", dto.getId()); //인증 티켓
			
			//사이트 전역을 계속 들고 다녀야 하는 정보가 있으면 -> 세션에 추가
			//나머지 회원 정보 -> select
			MemberDTO rdto = dao.getMember(id);
			
			session.setAttribute("name", rdto.getName());
			session.setAttribute("pic", rdto.getPic());
			session.setAttribute("regdate", rdto.getRegdate());
			session.setAttribute("seq", rdto.getSeq());
			session.setAttribute("email", rdto.getEmail());
			
			
			
			
			//시작 페이지로 이동
			resp.sendRedirect("/codestudy/index.do");			
			
		} else {
			//로그인 실패
			PrintWriter writer = resp.getWriter();
			
			writer.print("<html><body>");
			writer.print("<script>");
			writer.print("alert('failed');");
			writer.print("history.back();");
			writer.print("</script>");
			writer.print("</body></html>");
			
			writer.close();
			
		}
		

	}
	
}








 

1. POST 방식으로 보냈으므로 POST 방식으로 받는다.

2. request 변수로 받아준다

String name = req.getParameter("name");

'2020.10 ~ 2021.03 취업성공패키지 > 홈페이지(JSP)' 카테고리의 다른 글

주소 분류  (0) 2021.04.13
chat  (0) 2021.03.03
ajax  (0) 2021.03.03
게시판 페이징  (0) 2021.03.03
Java로 jsp파일 열기  (0) 2021.03.02
Comments