쌍용 강북 교육센터 국비학원 Day 89일차 AOP (Aspect Oriented Programming) - 관점(관심) 지향 프로그래밍 AOP(Aspect-Oriented Programming)는 핵심 로직과 부가 기능을 분리하여 애플리케이션 전체에 걸쳐 사용되는 부가 기능을 모듈화하여 재사용할 수 있도록 지원하는 것이다. ※ AOP는 부가기능을 애스펙트(Aspect)로 정의하여, 핵심기능에서 부가기능을 분리함으로써 핵심기능을 설계하고 구현할 때 객체지향적인 가치를 지킬수 있도록 도와주는 개념이다. Aspect Aspect는 부가기능을 정의한 코드인 어드바이스(Advice)와 어드바이스를 어디에 적용하지를 결정하는 포인트컷 (PointCut)을 합친 개념이다. Advice + PointCut = Asp..
ALL
쌍용 강북 교육센터 국비학원 Day 88일차 Spring Controller 작성 예제 form 태그 컨트롤러 작성 예제 get 방식일 경우에는 form을 작성하는 view 페이지로 이동하고 해당 view 페이지에서 form을 post로 자기자신한테 submit 하면 컨트롤러에서 post로 받아들여 똑같이 파라미터를 받아올 수 있다. 스프링에서는 전달할 수 있는 파라미터를 객체 한개까지만 받을 수 있어서 (여러개의 데이터를 받지 못한다) VO나 Map을 이용해 데이터를 전달해야 한다. - HashMap 타입으로 매개변수를 받아온 것을 꺼내서 사용할때 - 1. 데이터로 사용할때는 #{key명} 이다 2. 식별자(테이블명, 컬럼명)로 사용할때는 ${key명} 이다 3. myBatis 에서 제공하는 if 엘리..
쌍용 강북 교육센터 국비학원 Day 87일차 MVC 패턴을 이용한 JSP 프로젝트 약 3주간의 세미프로젝트가 끝나고 마지막 파이널 프로젝트를 위한 Spring을 배워 적용시키는 시간이다. (길다면 길고 짧다면 짧은시간이었지만 처음으로 JSP를 구현해봤지만 조금 아쉬움이 남는 프로젝트였다. 다음 프로젝트에는 이제 어떻게 설계를 해야하고 어떻게 생각을 하고 구현해야하는지 감각을 느낀 것 같다.) Spring Framework 스프링 프레임워크를 이용한 기본적인 세팅과 구현순서이다. web.xml의 세팅 root-context.xml 세팅 url - DB와 연결할 IP주소 username - 해당 DB의 접속할 유저이름 password - 해당 DB의 접속할 비밀번호 #18. Controller 에서 만들어진..
Ajax 의 주요 구성 요소 1. XMLHttpRequest : 웹서버와 통신을 담당하는 것으로서 사용자의 요청을 웹서버에 전송해주고, 웹서버로 부터 받은 결과를 사용자의 웹브라우저에 전달해줌. 2. DOM (Document Object Model) : DOM은 HTML과 XML문서에 대하여, 이들 문서의 구조적인 표현방법을 제공하며, 어떻게 하면 스크립트를 이용하여 이러한 구조에 접근할 수 있는지를 정의하는 API 이다. DOM 객체는 텍스트와 이미지, 하이퍼링크, 폼 엘리먼트 등의 각 문서 엘리먼트를 나타낸다. 3. CSS : 글자색, 배경색, 위치 등 UI 관련 부분을 담당. 4. JavaScript : 사용자가 마우스를 드래그하거나 버튼을 클릭하면 XMLHttprequest 객체를 통해 웹서버에 ..
쌍용 강북 교육센터 국비학원 Day 78일차 파일을 첨부해서 보내는 폼태그가 enctype="multipart/form-data" 으로 되어있으면 HttpServletRequest request 을 사용해서는 데이터값을 받아올 수 없다. 이때는 cos.jar 라이브러리를 다운받아 사용하도록 한 후 아래의 객체를 사용해서 데이터 값 및 첨부되어진 파일까지 받아올 수 있다. MultipartRequest mtrequest 은 HttpServletRequest request 가 하던일을 그대로 승계받아서 일처리를 해주고 동시에 파일을 받아서 업로드, 다운로드까지 해주는 기능이 있다. =첨부되어진 파일을 디스크의 어느 경로에 업로드 할 것인지 그 경로를 설정해야 한다. ServletContext svlCtx =..
쌍용 강북 교육센터 국비학원 Day 77일차 ※ 선택자를 잡을때 선택자가 태그에 직접 기술한 것이라면 선택자를 제대로 잡을수가 있으나 스크립트내에서 (함수, jQuery로) 기술한 것이라면 선택자를 못 잡아올수도 있다. 이러한 경우는 이벤트 처리는 아래와 같이 해야한다. $(document).on( "이벤트종류", "선택자", function ( ) { } ); 으로 한다. 다음은 이미지를 업로드 하기 위해 input 태그에 이미지를 선택하면 해당 이미지의 미리보기를 띄워주는 예제이다. $(document).on("change", "input.img_file", function(e) { const input_file = $(e.target).get(0); jQuery선택자.get(0) 은 jQuery 선..
쌍용 강북 교육센터 국비학원 Day 73일차 ※ method GET 방식을 사용할때는 항상 사용자가 URL에 임의의 값을 넣을 수 있기 때문에 경우의 수를 생각해 입력하는 값을 막아주어야 한다. Paging (페이징) 처리 sizePerPage - 한 페이지당 화면상에 보여줄 행의 개수 blockSize - 보통 1개 블럭당 10개씩 잘라서 페이지 만든다.1개 페이지당 sizePerPage 를 보여주는 것 TotalPage - DB에서 불러올 총 행의 개수를 반올림 한것 (남는 것까지 페이지는 구현이 되야하기 때문에 반올림) currentShowPageNo - 현재 가르키고 있는 페이지 1블럭 1 2 3 4 5 6 7 8 9 10 [다음] 2블럭 [이전] 11 12 13 14 15 16 17 18 19 ..
쌍용 강북 교육센터 국비학원 Day 70일차 라디오중에서 한개를 선택했을 경우 같은 index의 이벤트 발생 예제 위와 같이 하나의 라디오를 선택했을때 point가 적혀있는 span 태그의 addClass를 하는 예시이다. 팝업창에서 부모창 함수 호출 방법 3가지 결제로직과 같이 팝업창과 페이지창이 번갈아가면서 로직을 구현해야할 때 함수를 이용하는데 이 때 부모창 (페이지창)의 함수를 호출하는 방법이다. 일반적인 방법 - 1 opener.location.href = "javascript:부모창스크립트 함수명();"; 일반적인 방법 - 2 window.opener.부모창스크립트 함수명(); (window.opener는 부모창을 뜻한다) jQuery를 이용한 방법 $(opener.location).attr(..
쌍용 강북 교육센터 국비학원 Day 69일차 Modal 창의 값을 초기화 하는 방법 위는 대상 아이프레임을 선택해서 모달창 내부 jsp 에서 함수를 이용해 값을 초기화 시킨 것으로 페이지 구현이 많지 않을 때 사용하기 용이하다. iframe 요소에 접근하는 contentWindow 와 contentDocument 의 차이점은 다음과 같다. contentWindow 와 contentDocument 모두 iframe 하위 요소에 접근 할 수 있는 방법으로 contentWindow 는 iframe의 window (전체, 전역)을 의미하는 것이고 contentWindow.document 은 contentDocument 와 같은 것이다. contentWindow 가 contentDocument 의 상위 요소이다...
쌍용 강북 교육센터 국비학원 Day 67일차 session (세션) session이란 WAS 컴퓨터의 메모리(RAM) 의 일부분을 사용하는 것으로 접속한 클라이언트 컴퓨터에서 보내온 정보를 저장하는 용도로 쓰인다. (즉, 웹 컨테이너에 클라이언트의 상태 정보를 보관할 때 사용한다) 클라이언트 컴퓨터가 WAS 컴퓨터에 웹으로 접속을 하기만 하면 무조건 자동적으로 WAS 컴퓨터의 메모리(RAM)의 일부분에 session 이 생성되어진다. session 은 클라이언트 컴퓨터 웹브라우저당 1개씩 생성되어진다. 예를 들면 클라이언트 컴퓨터가 크롬 웹브라우저로 WAS 컴퓨터에 웹으로 연결하면 session이 하나 생성되어지고, 또 이어서 동일한 클라이언트 컴퓨터가 엣지 웹브라우저로 WAS 컴퓨터에 웹으로 연결하면 ..