JAVA

javaScript를 이용한 Servlet 요청

정숙씨의 쏠쏠한 코딩 2021. 7. 26. 23:31
  • 해당 예시는 책에 나오는 예제를 따라 했기 때문에 따로 javascript 파일을 분리 하지 않음.
    • login2.html
      • <!DOCTYPE html>
        <html lang="en">
        <head>
        <meta charset="UTF-8">
        <title>로그인</title>
        <script>
        //javascript 유효성 검사
        function fn_validate()
        {
        //Dom element 값을 가져옴
        var frmLogin = document.frmLogin;
        var user_id = frmLogin.user_id.value;
        var user_pw = frmLogin.user_password.value;

        if((user_id.length == 0 || user_id.length =="")|| (user_pw.length == 0 || user_pw ==""))
        {
        alert("아이디와 비밀번호는 필수입니다.");
        }
        else
        {
        frmLogin.method = "post";
        frmLogin.action = "login5";
        frmLogin.submit();
        }
        }
        </script>
        </head>
        <body>
        <form name="frmLogin" method="get" action="login" enctype="UTF-8">
        아이디 : <input type="text" name="user_id"></br>
        비밀번호 : <input type="password" name="user_password"></br>
        <input type="submit" onclick="fn_validate()" value="로그인">
        <input type="reset" value="다시입력">
        <input type="hidden" name="user_address" value="서울시 성북구">
        </form>
        </body>
        </html>
      • LoginServlet.java
        • package sec03.ex03;

          import javax.servlet.*;
          import javax.servlet.http.*;
          import javax.servlet.annotation.*;
          import java.io.IOException;
          import java.io.PrintWriter;

          @WebServlet(value = "/login5")
          public class LoginServlet5 extends HttpServlet {
          @Override
          public void init() throws ServletException {
          System.out.println("init 호출");
          }

          @Override
          protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

          }

          @Override
          protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
          request.setCharacterEncoding("utf-8");
          response.setContentType("text/html; charset=utf-8");
          PrintWriter out = response.getWriter();

          String id = request.getParameter("user_id");
          String pw = request.getParameter("user_password");
          String addr = request.getParameter("user_address");

          System.out.println("아이디 : " + id);
          System.out.println("비밀번호 : " + pw);
          String Data = "<html>";
          Data += "<body>";
          Data += "아이디 : " + id + "</br>";
          Data += "비밀번호 : " + pw + "</br>";
          Data += "주소 : " + addr + "</br>";
          Data += "</body>";
          Data += "</html>";
          out.print(Data);
          }

          @Override
          public void destroy() {
          System.out.println("destroy call");
          }
          }