본문 바로가기

728x90
반응형

programming/Gukbi

(107)
국비 교육 66일차 - mainPage만들기 mvc구조를 이용해서 메인페이지를 통해 모든 페이지가 띄워질 수 있게끔 하는 사이트를 만드는게 팀 프로젝트의 목표이다. 그래서 이번 시간에는 mainpage를 연결하는 방법을 배웠다. 먼저 mvc구조의 핵심은 model, view, controller를 나누는 것이기 때문에, model 부분에 대한 이해가 필수적이다. package com.sist.model; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.sist.controller.Controller; import com.sist.controller.Re..
국비 교육 65일차 - annotation 사용 controller 제작 분명 원리는 같은데 훨씬 난이도가 있는 controller 제작이었다... 이것만 잘 이해해도 앞으로의 spring 사용이 쉬워질거라고 강사님이 말씀해주셨으니, 다는 아니어도 꼭 구조의 흐름이 어떻게 흘러가는지만 이라도 이해하고 싶다... 일단 어노테이션을 사용하는 이유를 꼭 짚고 넘어가려고 한다. 1. controller를 확정시키고 나서 코드를 바꾸지 않으려고 하기 때문에 -> 재활용성이 높아진다. 2. 한 클래스 안에 있는 여러 메소드들을 불러오기 위해서 -> 이렇게 하면 한 메소드당 하나의 클래스를 만들지 않아도 되기 때문에, 응집력이 높은 프로그램을 만들 수 있다. 이건 어노테이션을 쓰기 이전의 web.xml 파일이다. 사용할 applicationContext.xml 의 경로만 따로 지정해 줬다..
국비 교육 65일차 - mvc구조, controller 만들기, xml parsing 어제에 이어서 mvc 구조를 제대로 파헤져보는 시간이었다. 어제 한 controller는 controller 내부에서 직접 자바 코딩을 했었는데, 오늘은 xml 파일에서 구조를 만든 뒤에, 그걸 파싱해와서 사용하는 코드를 만들어봤다. 일단 톰캣의 web.xml 파일은 아래와 같이 만들어 줬다. JSPMiddleProject3 mvc com.sist.controller.DispatcherServlet contextConfigLocation C:\webDev\webStudy\JSPMiddleProject3\WebContent\WEB-INF\applicationContext.xml mvc *.do index.html index.htm index.jsp default.html default.htm default..
국비 교육 64일차 - EL, MVC구조, JSTL 오늘은 마지막에 프로젝트 시간 없이 온전히 수업만 8시간을 나갔다. 그만큼 좀 정신없이 진도가 나갔는데 잘 정리해보도록 하겠다. MV패턴 Model => 자바 View => HTML (JSP) ===> MVC 패턴 Model => 자바 View => HTML(JSP) Controller => 자바와 JSP를 연결 EL 연산자 처리 메소드 처리 처리 영역 ${일반 변수 출력이 아니다} 예) String name="홍길동"; ${name} (X) request.getAttribute("name"); session.getAttribute("") --%> request, session, application // 자바에서 데이터를 보낸다 (request, session) %> 이름:${name },${reque..
국비 교육 63일차 - 맛집 사이트 완성 이전 시간까지는 맛집 사이트를 완성하기 위한 데이터저 수집과 메인 페이지 만들기를 완성해 왔다면, 이번 시간에는 나머지 디테일들을 하나씩 완성해 나갔다. 먼저 카테고리를 클릭하면 대략적으로 목록을 볼 수 있는 페이지를 만들었다. 여기서 사진을 클릭해서 들어가면 아래와 같은 화면이 나온다 후기가 들어가는 곳은 그냥 임의로 아무 데이터나 넣어준 것이고, 여기서 집중해서 볼 것은 이미 수집해놓은 사진데이터와 주소 데이터를 잘라와서 띄워주고 있다는 점이다. 영국음식이 이렇게 맛있다니 재방문의사 매우 있음 셰퍼드파이 어디선가 먹어본 맛인데 정말 맛있었다 다음에 가도 셰퍼드파이는 꼭 주문해야지 피쉬앤칩스 비릴줄 알았는데 그런거 없고 부드럽고 맛있었다 사진은 여러장이 있었기 때문에 ^을 단위로 나눠서 구분해서 저장해..
국비 교육 62일차 - session, include 활용 계속해서 jsp를 배우면서 실습하고 있다. 어제는 클라이언트에 저장되는 cookie를 배웠다면 오늘은 서버에 저장되는 session을 배웠다. session은 로그인 같은 기능에서 필수적으로 사용되어야 하기 때문에 잘 알아둬야 프로젝트 할때도 적용해서 사용할 수가 있다. - 클래스 javax.servlet.http.HttpSession - 주요 기능 1) 클라이언트와의 지속적인 연결 유지를 위한 세션 처리 2) 세션은 하나의 애플리케이션 내에서만 유효함. 두 개의 서로 다른 애플리케이션에서는 쿠키를 사용해야 함. 아래는 세션에서 사용하는 메소드들 이다. 일단 로그인을 어떻게 처리하는지 부터 보도록 하겠다. ID PW 로그인 로그인창은 위와 같이 생성해준다. 로그인 정보는 외부에 공개되면 안되기 때문에 꼭..
국비 교육 61일차 - bean, cookie jsp 내장 객체를 계속 배우는 중이다. 오늘 배운건 bean과 cookie DB에서 데이터를 가져오면 JavaBean이라는 클래스에 담아서 JSP를 통해 웹브라우저에 띄울 수 있다. 이런 과정을 통해서 오라클에서 값을 가져와 준다. package com.sist.bean; /* * 네트워크 통신 * 브라우저(클라이언트) 톰캣(서버) * 결과값 => 데이터가 많은 경우에 클래스로 묶어서 한번에 전송 * JSP : Bean * = 변수(private),읽기/쓰기 => getter/setter * MyBatis : DTO * Spring : VO * ============ 캡슐화 (데이터 보호:시큐어코딩) * */ public class MemberBean { private String id; private..
국비 교육 60일차 - errorPage, 웹 크롤링 오늘도 jsp내장 객체인 errorPage를 배웠다. 그리고 프로젝트 완성을 위해 데이터 수집을 해야하기 때문에 웹 크롤링을 배우고 실제 내 프로젝트에 필요한 데이터를 긁는 준비를 해놨다. 일단 errorPage부터 보겠다. 전송 (Model) 3) 에러페이지 지정 Socket => Connection BufferedReader, OutputStream => PreparedStatement 1. errorPage : 모든 에러가 한개의 파일로 처리 => jsp안에서 처리 2. 에러별 처리 => web.xml web 에러 200 : 정상수행 307 : 임시 페이지로 이동 (파밍) 400 : 요청이 잘못된 경우 401 : 접근 불허용 **404 : 파일이 없는 경우 405 : 잘못된 데이터 전송 방식 POS..
국비 교육 59일차 - application, include 본격적으로 프로젝트를 만드는 주간이 되었다. 근데 수업은 계속한다.. 힘들어 죽겠다 일단 jsp에서 사용하는 내장객체를 배우고 있다. 서버정보 관리 서버정보 읽기 getServerInfo() getMinorVersion() getMajorVersion() 로그 읽기 log() => 로그파일 환경 설정 읽기 web.xml 자원 정보 읽기 ***getRealPath() --%> 서버명 Major Version Minor Version 실제 경로 application 내장 객체를 배웠다. getInitParameter를 통해서 값을 읽어오는 방법 파일첨부: post방식으로 값을 보내주는 방법 inert_ok에서 post방식으로 값을 실제로 읽어주고 있다. 여기서 이제 파일을 받아와서 처리를 해준다. 여기서 받..
국비 교육 58일차 - 답글형 게시판 만들기 request, response를 배웠으니 이걸 활용할 수 있는 예제를 만들어봤다. 그냥 게시판은 이미 한두번 만들어 봤으니 답글을 달 수 있는 게시판을 연습해봤다. 생각보다 테이블 안에 들어갈 데이터를 생각하는게 복잡해서 처음에 바로바로 머릿속에 들어오지 않았다. 이거는 테이블 만든것부터 다시 보고 넘어가야 할 것 같다. -- 묻고 답하기 => request, response /* 새글입력시마다 ORDER BY group_id DESC, group_step ASC no subject group_id group_step group_tab root depth 1 AAAAAAA 1 0 0 0 1 2 ->BBBBBB 1 1 1 1 1 3 ->CCCCCC 1 2 2 2 0 4 DDDDDDD 2 0 0 0 2 5..

728x90
반응형