inblog logo
|
programmer
    Spring

    Servlet 만들기

    [Spring] Servlet 만들기
    Jan 25, 2024
    Servlet 만들기
    Contents
    프로젝트 생성ContextPath 설정

    프로젝트 생성

    notion image

    ContextPath 설정

    notion image
    notion image
     
    Dispatcher
    package org.example.demo2; import jakarta.servlet.http.HttpServletResponse; import java.io.IOException; // 라우팅 public class Dispatcher { public static void route(String cmd, String action, HttpServletResponse resp) throws IOException { if(cmd.equals("user")){ UserController con = new UserController(); if(action.equals("login")){ String html = con.login(); resp.getWriter().println(html); }else if(action.equals("join")){ String html = con.join(); resp.getWriter().println(html); } }else if(cmd.equals("board")){ resp.getWriter().println("<h1>board</h1>"); } } }
    FrontController
    package org.example.demo2; import jakarta.servlet.ServletException; import jakarta.servlet.annotation.WebServlet; import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.PrintWriter; @WebServlet("/*") public class FrontController extends HttpServlet { @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.setHeader("Content-Type", "text/html; charset=utf-8"); String cmd = req.getParameter("cmd"); String action = req.getParameter("action"); Dispatcher.route(cmd, action, resp); } }
    UserController
    package org.example.demo2; public class UserController { public String login(){ return "<h1>login</h1>"; } public String join(){ return "<h1>join</h1>"; } }
    http://localhost:8080/?cmd=user&action=login
    → 일반적으로 쿼리 스트링으로 사용하면 255자까지 밖에 못적기 때문에 데이터를 주소로 보내지는 않음.
    notion image
     
    Share article

    programmer

    RSS·Powered by Inblog