본문 바로가기

Web & Mobile/JSP20

Lecture 56 - JSP(14) MVC Model2 기반 게시판(1) MVC 패턴(Model2)으로 게시판을 생성해 보자!! 게시판 만들때 model1 우선 돌아가는거 확인하고 model2 진행하는데 선행되야할 조건은 jdbc드라이버 -> context -> 클래스파일 -> jsp파일 순으로 진행해야 에러가 안남 위와 같이 설정해 준다. 그리고 board_list1이 동작하는지 확인한다(쓰기, 수정, 삭제) 이후 이상없으면 model1을 통째로 복사해서 model2라고 만들어준다. Model2Ex01.src에 servlet이란 패키지를 만들어주고 안에 servlet을 다음 그림과 같이 생성한다. Constructors from superclass는 체크 해제 해주도록 하자 model2라는 패키지를 만든다 -> Action을 만들고 -> ListAction, WriteAct.. 2019. 6. 4.
Lecture 55 - JSP(13) annotation, filter, 한글 encoding, decoding, 로그인 검사 필터, ServletContextListener, MVC 패턴 서블릿 사용시 web.xml을 사용하는데 여기에 다 써놓는게 힘들어서 나온게 annotation이다. web.xml generate 체크 안하고 생성 @WebServlet({"/servlet01"}) public class ServletEx01 extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doProcess(req, resp); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws Servle.. 2019. 6. 3.
Lecture 54 - JSP(12) 세션, SSO, 로그인, 로그아웃, 서블릿, get, post, 동이름입력받아주소출력 클라이언트와의 대화 2 : 세션 서버세션을 사용하면 클라이언트의 상태를 저장할 수 있다. 쿠키와의 차이점은 세션은 웹 브라우저가 아니라 서버에 값을 저장한다는 점이다. 서버는 세션을 사용해서 클라이언트 상태를 유지할 수 있기 때문에, 로그인한 사용자 정보를 유지하기 위한 목적으로 세션을 사용한다. 세션 사용하기 : session 기본 객체 웹 브라우저에 정보를 보관할 때 쿠키를 사용한다면, 세션은 웹 컨테이너에 정보를 보관할 때 사용한다. 세션은 오직 서버에만 생성된다. 웹 컨테이너는 기본적으로 한 웹 브라우저마다 한 세션을 생성한다. 위 그림과 같이 JSP1과 JSP2가 세션을 사용한다고 한 경우 웹 브라우저 1이 JSP1과 JSP2를 실행하면, 웹 브라우저 1과 관련된 세션 1을 사용한다. 웹 브라우.. 2019. 5. 31.
Lecture 53 - JSP(11) 페이지 모듈화, 요청 흐름 제어, Include, Cookie, Login, Logout 페이지 모듈화와 요청 흐름 제어 보통 하나의 웹 사이트를 구성하는 페이지 들은 동일한 상단 메뉴, 죄측 메뉴 그리고 하단 푸터를 갖는다. 이런 공통 구성 요소를 위한 묘드를 모든 JSP 페이지마다 작성한다면 코드 중복이 발생하게 된다. 게다가 공통 구성 요소의 일부를 수정하려면 모든 JSP 페이지를 수정해야 하는 부담도 있다. 이런 화면 구성 요소의 묘드 중복 문제를 없앨 때 사용할수 있는 것이 바로 (jsp: include) 액션 태그이다. (jsp: include) 액션 태그는 위치한 부분에 지정한 페이지를 포함한다. 순서 1. main.jsp가 웹 브라우저의 요청을 받는다. 2. [출력내용 A]를 출력 버퍼에 저장한다. 3. 가 실행되면 요청 흐름을 sub.jsp로 이동한다. 4. [출력내용 B]를.. 2019. 5. 30.
Lecture 52 - JSP(10) Model1 기반 게시판 파일 업로드 기능 구현 파일 업로드 기능 구현하기 http://www.servlets.com/cos/ UploadEx01.form 파일 파일 UploadEx01.form_ok upload 폴더에 파일전송한 lecense.txt가 전송되었다. 제한 용량이 2MB이므로 용량이 허용하는 파일을 전송해야 한다. 중복된 파일이 전송되면 new DefaultFileRenamePolicy()에 의해서 파일이름 뒤에 숫자가 순차적으로 붙는 알고리즘이 내장되어 있다. 2MB를 초과한 데이터를 전송시 위와 같이 에러가 난다. 위와 같이 설정하면 upload에 파일이 들어오면 알아서 새로고침 됨 UploadEx01.form_ok - 파일 저장되는 프로세스 out.println(multi.getFilesystemName("upload") + " ".. 2019. 5. 29.
Lecture 51 - JSP(9) 검색기능 추가한 Model1 기반 게시판 검색기능을 더한 게시판을 Model1으로 해서 구현하고 여기에 view1안에는 이전글, 다음글 기능을 추가하는 게시판을 만들었다. ModelEx01.search1.BoardDAO package search1; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; import javax.sql.DataSource; //.. 2019. 5. 28.
Lecture 50 - JSP(8) 모델1 기반 게시판 BoardTO, BoardDAO, 답글쓰기 model1 BoardTO BoardDAO paging model1 List 페이지 표현을 위한 TO BoardListTo BoardTO BoardDAO ModelEx01.paging1.BoardDAO package paging1; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; import javax.sql.D.. 2019. 5. 27.
Lecture 49 - JSP(7) 페이지 수를 나타내는 Model1 기반 게시판 페이지 수를 나타내고 누르면 이동하는 구문 추가하기 우선 데이터를 200개 추가하기 BoardEx01.paging1.board_write2_ok 게시판 HOME > 게시판 > 게시판 글쓴이 제목 비밀번호 내용 이메일 @ ※ 개인정보 수집 및 이용에 관한 안내 1. 수집 개인정보 항목 : 회사명, 담당자명, 메일 주소, 전화번호, 홈페이지 주소, 팩스번호, 주소 2. 개인정보의 수집 및 이용목적 : 제휴신청에 따른 본인확인 및 원활한 의사소통 경로 확보 3. 개인정보의 이용기간 : 모든 검토가 완료된 후 3개월간 이용자의 조회를 위하여 보관하며, 이후 해당정보를 지체 없이 파기합니다. 4. 그 밖의 사항은 개인정보취급방침을 준수합니다. 개인정보 수집 및 이용에 대해 동의합니다. 목록 등록 BoardEx01.. 2019. 5. 24.