Web/Servlet-JSP
-
Servlet-JSP MVC02(3) - 내장객체Web/Servlet-JSP 2023. 6. 12. 15:35
1. 내장객체 앞선 포스트에서 살펴봤듯이 jsp에는 내장객체가 존재한다. 이에 대해 조금 자세히 알아보도록 하자 2. 내장 객체 존재 이유 - 상태 유지의 필요성 내장 객체들은 jsp관점에서 보기보단, 서블릿에 관점에서 먼저 바라보자. 클라이언트 요청이 들어오면 서블릿컨테이너를 통해 서블릿이 메모리에 로드되고, 적절한 처리를 한 뒤에 메모리에서 제거된다. 즉, 서블릿이 호출되고, 종료되면 서블릿이 사용하고있던 자원이 반환된다는 것이다. 하지만, 때론 서블릿이 자원을 받아 일정하게 처리하고, 처리된 결과를 전역변수처럼 계속 유지하며, 서블릿끼리 공유해야할 때도 있을 것이다. (ex 계산기를 만든다고 할때 2 + 2 + 2 = 6 -->사용자 입력이 =이 나올때 까지 전 계산 결과를 계속 유지하고 있어야한다..
-
Servlet-JSP MVC02(2) - JSP와 Servlet의 관계Web/Servlet-JSP 2023. 6. 12. 14:46
1. JSP는 서블릿이다. JSP의 실행과정을 보면 (클라이언트가 jsp로 곧바로 요청을 보냄) 클라이언트 요청 -> WAS가 JSP를 찾아서 랜더링 -> 랜더링 된 JSP페이지를 통해 응답하는 과정을 거친다. 이런 일련의 응답과정에서 JSP가 서블릿으로 (서블릿의 형태로) 변환되어 응답한다. @WebServlet("/test01.jsp") public class Myhap extends HttpServlet { final PageContext pageConext=null; javax.servlet.http.HttpSession session = null; final javax.servlet.ServletContext application =null; //내장객체들 protected void servic..
-
Servlet-JSP MVC02(1) - 간단 JSPWeb/Servlet-JSP 2023. 6. 12. 13:31
1. JSP란 JSP는 java erver page의 약자로 자바로 작성된 서버에서 구동되는 웹페이지를 의미한다. MVC에서 view의 역할을 하고 내부적으로 html코드와 자바로 이루어져있다. MVC01에서 Servlet만으로 웹페이지를 구성할 때 PrintWriter를 response로부터 얻고, html코드를 짜는 부분이 굉장히 불편했는데, jsp를 활용하면 이를 좀 더 편리하게 처리할 수 있다. 2. JSP기본 문법 JSP파일을 처음 만들면, 위와 같이 jsp페이지 내의 인코딩을 따로 지정해주지 않아도 자동으로 지정된다. 2.1 지시자 지시자는 WAS가 jsp파일을 해석하기전에 미리 페이지에 포함된 여러 정보를 알리는 역할을 수행한다. : 페이지의 정보를 알리는 지시자이다. 페이지 지시자와 함께 ..
-
Servlet - JSP MVC01 (6) 회원정보수정하기Web/Servlet-JSP 2023. 5. 26. 11:51
회원정보 수정하기를 추가하고 mvc01을 마무리 1. 회원상세페이지(MemberContentController)에 수정, 취소, 돌아가기 추가 및 필요데이터 넘기기 pw.println(""); pw.println(""); pw.println("돌아가기"); > 수정하기 버튼을 누르면, 수정 요청을 받는 컨트롤러에 새로운 나이, 이메일, 휴대폰번호 정보가 함께 넘어가야한다. > 따라서 수정버튼은 submit으로 해두고, 회원상세보기 테이블 전체를 감싸도록 form태그를 추가하자 pw.println(""); > submit버튼을 누르면 memberUpdate.do에 post 방식으로 정보가 넘어간다. > 이름,이메일,전화번호는 중복값을 허용하기 때문에 회원레코드를 식별하기 위해서 기본키인 num을 넘겨야한다..
-
Servlet - JSP MVC01 (5) - 회원상세보기Web/Servlet-JSP 2023. 5. 26. 09:35
회원 아이디를 누르면, 회원정보를 상세하게 볼 수 있는 페이지를 만들어보자. 1. memberListController에 아이디별 태그 추가 및 컨트롤러 만들기 out.println(""+m.getId() +""); > 회원별 상세정보를 DB에서 꺼내와야한다 이때 회원을 구별하기 위한 정보가 필요하므로 num을 같이 넘기자. > memberContent.do를 받을 컨트롤러 memberContentController 서블릿을 추가하자 2. num수집해서 DAO(모델)과 소통 int num = Integer.parseInt(request.getParameter("num")); MemberDAO dao = new MemberDAO(); MemberVO mem_inf = dao.memberContents(nu..
-
Servlet-JSP MVC01 (4) - 회원삭제Web/Servlet-JSP 2023. 5. 26. 09:04
memberList에서 삭제버튼 추가해서 누르면 회원정보가 삭제되도록 하자. 1. memberListController에 view부분에 삭제버튼 추가하기 각 회원정보 칸 마다 삭제버튼을 추가해야 삭제하고 싶은 회원을 삭제할 수 있을 것이다. 멤버리스트를 출력하는 for문에 삭제버튼을 추가하자 out.println("삭제"); > 삭제버튼을 태그를 통해 추가하였다. 이때 태그를 누르면 넘어갈 url에 쿼리스트링을 추가해서 각 회원리스트별 num정보가 함께 넘어가도록 했다. > 이는 삭제를 위해 sql문을 실행할 때, 삭제할 멤버를 구분할 key값으로 num을 사용하기 위해 넘겼다. > 이제 memberDelete.do를 받을 컨트롤러를 추가하자. 2. MemberDeleteController 추가하기 Me..
-
Servelt-JSP MVC01 (3) - 회원리스트 가져오기Web/Servlet-JSP 2023. 5. 26. 08:32
회원가입이 성공하면, 회원 리스트를 보여주도록 만들어보자 1. 회원가입 성공 후 Redirect if(cnt>0) { //가입성공 response.sendRedirect("/MVC01/memberList.do"); //전에 가입 성공시 그냥 메세지 뜬 거 수정 - 회원가입이 성공하면, Redirect를 통해 memberList.do를 처리할 컨트롤러와 클라이언트를 연결하자 2. memberList.do 처리할 컨트롤러 + 모델 @WebServlet("/memberList.do") public class MemberListController extends HttpServlet { protected void service(HttpServletRequest request, HttpServletResponse ..
-
Servlet-JSP MVC01 (2) - Servlet과 Model 연결 (회원관리테이블)Web/Servlet-JSP 2023. 5. 24. 22:26
1. 입력 받을 Html파일 준비 회원가입화면 아이디 패스워드 이름 나이 이메일 전화번호 html은 tablegenrator사이트에 접속해서 만든 테이블이다. (쉽게 만들 수 있음!) > html파일의 위치는 webapp/member에 위치한다. 여기서 그냥 submit을 하면 webapp/member/memberInsert.do가 된다. 즉, member디렉토리 위치에서 memberInsert.do이름의 파일이나 관련 url매핑된 것이 있는지 찾는 것이다. 서블릿 클래스가 위치한 곳은 webapp/WEB-INF/classes이고, WEB-INF부터는 접근이 안되고 WAS가 알아서 찾아줌으로 action을 루트 디렉토리로 주도록 하자. > input에 파라미터들은 VO클래스 멤버들과 이름을 맞추는 것이 ..