본문 바로가기

✨ Back-end/Servlet36

[Servlet / JSP / SQL] 회원 관리 폼 만들기 (2) - INSERT(회원 등록) 이전 포스팅에서 DB연동 후 결과 페이지를 만드는데 까지 해보았다. login_result.jsp result 값으로 받아온 member에 들어있는 id와 pw가 일치하지 않으면 자바스크립트를 이용해 '로그인 실패'를 띄우고, 그렇지 않다면 '로그인 성공'을 띄운다. loginForm.do로 갈 서블릿과 memberList.do로 갈 서블릿을 만들어주자. MemberController.java 서블릿 loginForm.do에서는 단순히 같은 페이지로만 돌아가게끔 구현하였고, memberList.do는 쿼리를 작성한 값을 가져와야한다. 따라서 젤 먼저 쿼리를 쓰러 mapper로 가자. member-mapper.xml select 쿼리는 반드시 resultMap을 가져온다는 것을 다시 한번 명심하자. 쿼리문.. 2023. 2. 22.
[Servlet / JSP / SQL] 회원 관리 폼 만들기 (1) - CREATE (DB 테이블 생성) 프로젝트 파일 코드 최종본 webapp 파일에 첫 시작 화면인 index.jsp를 시작으로 회원 가입, 로그인, 로그인 결과, 회원 리스트, 회원 상세정보, 회원 삭제, 회원 업데이트 기능을 만들었다. 데이터 베이스를 이용하여 CRUD 게시판을 만들어보는 과정이다. 나중에 보았을때에도 헷갈리지 않도록 지금 내가 생각하고 있는 내용을 최대한 자세히 적어볼 것이다. 시작전, 먼저 JavaResources 폴더의 src/main/java에서 controller, dto, service, sqlmap 패키지를 만들었고, 각각 알맞는 인터페이스와 클래스 생성, 그리고 xml파일을 가지고왔다. 처음 시작은 webapp 폴더에서 index.jsp 파일을 만들었다. index.jsp HTML 삽입 미리보기할 수 없는 .. 2023. 2. 22.
[Servlet / JSP] 게시판 만들기 등록, 쓰기, 수정, 삭제 CRUD (최종) BoardController HTML 삽입 미리보기할 수 없는 소스 BoardDTO HTML 삽입 미리보기할 수 없는 소스 board_write_form HTML 삽입 미리보기할 수 없는 소스 boardDetail HTML 삽입 미리보기할 수 없는 소스 boardList HTML 삽입 미리보기할 수 없는 소스 index HTML 삽입 미리보기할 수 없는 소스 update_board_form HTML 삽입 미리보기할 수 없는 소스 결과화면 2023. 2. 18.
[Servlet / JSP] 게시판 만들기 -2 (글 수정U, 글 삭제D) CRUD 앞에선 글 등록(C) 글 쓰기(R)를 만들어보았다. 이번을 끝으로 CRUD 모두 거쳐 게시판을 만들고자한다. 먼저, 상세보기 페이지를 하나 만들어야한다. boardDetail.jsp HTML 삽입 미리보기할 수 없는 소스 글 상세보기를 하기 위해서 나는 글 제목인 title을 눌리면 갈 수 있게 a태그를 주어 생성했다. 삭제하기와 수정하기 버튼을 만들었다. boardList.jsp (앞에 있던 jsp에서 수정함) HTML 삽입 미리보기할 수 없는 소스 먼저, 썻던 제목 타이틀을 누르면 상세보기 화면으로 가는 것을 알아보자. boardList.jsp에서 42번째 줄인 a태그를 이용해 서블릿 boardDetail.do 로 이동한다. BoardController (서블릿) HTML 삽입 미리보기할 수 없는 소.. 2023. 2. 18.
[Servlet / JSP] 게시판 만들기 -1 (글 쓰기R, 글 등록C) CRUD Servlet과 JSP에 대해 어느정도 알게되었다. 이제 본격적인 프로젝트를 하나 해보려고 한다. 먼저, 메인 페이지를 뜻하는 index.jsp를 생성했다. 강요되는 것은 아니나 권장되는 형식이라하니 따르면 좋을 것이다. index.jsp HTML 삽입 미리보기할 수 없는 소스 body를 감싸는 10번째 줄에 위코드는 메인 페이지가 실행되는 즉시 Servlet으로 가서 [ 만약 커맨드로 boardList.do를 받으면 ~~ if(command.equals("/boardList.do")) ] 이라는 부분을 실행하라는 의미이다. BoardController (서블릿) HTML 삽입 미리보기할 수 없는 소스 57번째 줄에 있는 boardList.do가 있는 부문이 실행될 것이다. request.setAttri.. 2023. 2. 18.
[Servlet] Servlet 하나로 여러 JSP 데이터 주고 받기 이전 까지는 각각 하나의 jsp로 servlet을 주고 받는 형식으로 늘 servelt을 새로 만들어주었다. 너무 번잡해지고 MVC 모델 패턴을 하는데 있어 효율적이지 않아 앞으로는 Servlet 하나로만 작업하기 위해 방법을 알아보았다. 먼저 생성하는 방법은 똑같지만, 통상적으로 서블릿 네임은 Controller 라고 한다. Controller.java ( 서블릿) HTML 삽입 미리보기할 수 없는 소스 14줄의 @WebServlet("*.do") 가 매우 중요한 부분이다. JSP에서 form이나 a 태그를 이용해 넘겨준 .do를 이용한 모든 요청을 받겠다는 뜻이다. 36번째 줄의 doProcess 메소드를 새로 생성해주었고, doGet과 doPost에는 doProcess 메소드를 받아왔다. reque.. 2023. 2. 18.
[Servlet] JSP, Servlet, Class 사용하여 이름, 나이, 성적 간단히 출력 JSP와 Servlet을 많이 연습해보며 어느정도 다룰 수 있게 되었다. 넘어야 할 산이 하나 또 남아있다. 바로 Class를 연동시켜 데이터를 받아와보자. Student.java (클래스) HTML 삽입 미리보기할 수 없는 소스 클래스로 받아갈 이름, 나이, 성적 변수를 만들고, 생성자와 세터, 게터를 만들었다. reg_stu.jsp HTML 삽입 미리보기할 수 없는 소스 이름, 나이, 성적을 입력할 input 박스를 만들고, form태그를 주어 서블릿파일에 "regStudent" 가 있는 곳으로 찾아가도록 지정해주었다. 메소드는 post. RegstudentServlet.java (서블릿) HTML 삽입 미리보기할 수 없는 소스 input type을 text로 받은 값은 모든 값이 String으로 정.. 2023. 2. 14.
[Servlet] 회원가입 폼 Sevlet 여러개로 JSP 왔다갔다하기 회원가입 form, Sevlet과 JSP 이용하기 데이터가 움직이는 순서 regMember.jsp -> Member01.java -> regMemberDetail.jsp -> Member02.java -> memberInfo.jsp 이다. 즉, JSP1 -> Sevlet1 -> JSP2 -> Sevlet2 -> JSP3 regMember.jsp (회원 등록 화면) HTML 삽입 미리보기할 수 없는 소스 회원 등록 화면을 만들어 준 후 form action 태그를 이용하여 " " 안에 있는 내용 regMember를 Sevlet파일 Member01의 @WebServlet("/regMember")과 같도록 지정해준다. form 태그를 사용 했으므로 "회원가입" 버튼을 누르면 regMember로 가도록 하게 지.. 2023. 2. 14.
[Servlet] 프로젝트 중 톰캣(tomcat) 버전 변경하는 방법 서블릿을 사용하다가 기능사용을 위해 버전을 변경하는 경우가 있다. 그때 새로운 톰캣을 다운받아도 이전 버전으로 작업했던 파일이 모두 에러가 날 것이다. 이럴때 어떻게 해결하는지 알아보았다. 첫번째, 해당 프로젝트 우클릭을하여 Build Path의 Configure Build Path에 들어간다. 두번째, 라이브러리에 있는 톰캣 이전버전을 Remove 시킨다. 세번째, Classpath을 클릭한 후 Add Libray 파일로 들어간다. Server Runtime을 선택후 Next를 눌러준다. 네번째, 이전 파일은 삭제되어 X표시가 뜨는데, 새로 설치한 9.0버전으로 선택 후 Finish를 눌러준다. 다섯번째, 오른쪽 하단에 있는 Apply를 눌러주어 저장한다. 여섯번째, 왼쪽열에 있는 Project Fac.. 2023. 2. 14.
[Servlet] JSP -> Servlet -> JSP (데이터 받기, 데이터 적재, 데이터 전달) 이번에는 좀 어려운 내용으로 공부해보았다. JSP파일에서 데이터를 Servlet으로 보내고, 데이터를 새로 적재한 후 다시 JSP파일로 전달하는 것이다. jsp01.jsp HTML 삽입 미리보기할 수 없는 소스 먼저 기본 페이지를 하나 생성해주었다. 이름과 나이로 데이터를 보낼 input 박스를 만들어 전송시킨다. Servlet01.java HTML 삽입 미리보기할 수 없는 소스 1. jsp파일에서 method를 "get"으로 표시해주었기 때문에 doGet( ) 메소드가 실행된다. 2. 24번째 줄과 같이 request.getParameter를 사용하여 jsp01.jsp파일 에서 전달한 데이터를 받아준다. 데이터를 적재한 후 다시 jsp파일에 보낼 수도 있고, 하지 않고 보내는 방법도 있다. 데이터 적재.. 2023. 2. 13.
[Servlet] JSP를 활용하여 doGet( ) , doPost( ) 출력하기 이전에 공부했던 JSP와 Servlet을 이용하여 HTML로 화면에 출력하고, doGet( ) 혹은 doPost( )로 콘솔창에 입력받아보려고한다. HelloServlet.java HTML 삽입 미리보기할 수 없는 소스 서블릿으로도 HTML을 작성할 수 있지만, 굉장히 불편해서 사용하지 않는다. hello.jsp HTML 삽입 미리보기할 수 없는 소스 11번째의 코드 줄에서 보이는 href="HelloServlet"에 이동 할 페이지명에 확장자가 붙어있지 않으면, 이동하고자 하는 입력값과 똑같은 이름의 servlet으로 이동한다. 페이지가 이동되어 servlet이 실행되면 doGet( ), doPost( ) 둘 중 하나의 메소드가 실행된다. form태그의 method 속성값이 post일 경우에만 doPo.. 2023. 2. 13.
[Servlet] JSP 서블렛이란? doGet( ) , doPost( ) , 라이프사이클 서블렛이 뭘까? 자바를 사용하여 웹페이지를 동적으로 생성하는 서버측 프로그램 혹은 그 사양을 말하는 것이다. 즉 , 웹 개발에 필요한 기능들을 서블렛(sevlet)이라는 클래스로 만들어 놓은 것이다. HttpServlet 클래스에는 웹 개발에 필요한 기능이 정의되어 있다. 그래서 클래스를 만들 때 HttpServlet 클래스를 상속하면, HttpServlet클래스에 정의된 웹 개발에 필요한 기능을 상속받아 쓸 수 있다. 이렇게 웹 개발에 필요한 기능을 정의한 HttpServlet 클래스를 상속받아 만든 클래스를 Servlet이라 지칭한다. Servlet을 실행시키면 톰캣이 main 메소드를 자동으로 구동시켜준다. main 메소드가 실행되면 doGet( ) 메소드나 doPost( ) 메소드 중 하나가 무조.. 2023. 2. 10.