programming

    [JSP] 차트

    17. 차트 17.1 구글 차트 17.1.1 사용 예 17.1.2 작업 순서 17.1.2.1 WebContent/WEB-INF/lib 디렉토리에 json-simple-1.1.1.jar 복사 jackson-databind-2.9.7.jar 복사 jar 파일은 https://www.mvnrepository.com 에서 다운로드 17.1.2.2 자바스크립트를 이용하여 차트 작성에 필요한 JSON 데이터를 리턴받아 화면에 출력시킴 17.1.2.3 JSON 데이터의 형식 { "cols": [ { "id": "", "label": "Topping", "pattern": "", "type": "string" }, { "id": "", "label": "Slices", "pattern": "", "type": "num..

    [Ubuntu] Ubuntu의 개요 및 설치

    1. Ubuntu의 개요 및 설치 1.1 Unix 1.1.1 1969년 C언어로 개발된 운영체제1.1.2 HP-UX, IBM-AIX, Mac OS X, Sun Solrais 등의 상업용 소프트웨어 사용중 1.2 Linux 1.2.1 상용 소프트웨어인 Unix 운영체제를 무료로 보급하기 위해 개발된 운영체제 1.2.2 1984년 리처드 스톨만이 GNU Project 시작, 프리웨어로만 구성된 완전 Unix System 개발이 목적, 커널(리눅스 시스템의 핵심적인 부분)을 제외한 시스템의 핵심적인 부분들을 거의 완성시킴 1.2.3 1991년 핀란드 헬싱키 대학의 대학원생이었던 리누스 토르발스가 커널 0.0.1 버전을 발표함'''컴퓨터로 말하면, 컴퓨터에서 제일 중요한 부품이 CPU인데, 커널이라는 제일 중요..

    [Design Pattern] 퍼사드 패턴 고찰

    퍼사드 패턴 1. 정의 퍼사드 패턴을 알아보기 전에 퍼사드의 의미를 짚어봅시다. 퍼사드 : 외관; 건물의 정면; 표면 그럼 퍼사드 패턴은 무엇일까요? 퍼사드 패턴 : 여러 서브 시스템을 간략하게 사용할 수 있게 해주는 패턴 간단히 한마디로 정리하자면, 인터페이스를 단순화하기 위해서 인터페이스를 변경하는 것입니다. 속은 보이지 않고 겉면만 볼 수 있죠. 작업 수행의 복잡성은 숨기고 사용자들에게는 간단한 인터페이스로 제공하는 패턴입니다. 그래서 퍼사드 패턴은 구름과 같다(Facade is like Cloud) 라고 표현하기도 합니다. 2. 예제 퍼사드 패턴을 아주 잘 설명해주는 사례가 있습니다. 바로 컴퓨터를 부팅하는 순간인데요. 사용자(User)는 컴퓨터가 부팅되기 위해 CPU와 Memory, HardDr..

    [JSP] pdf

    16. pdf 16.1 itextpdf 라이브러리 API 한글 처리를 위해서는 폰트 정보가 필요함 16.2 라이브러리 다운로드 WebContent/WEB-INF-lib 디렉토리에 복사 itextpdf-5.5.13.jar itext-asian-5.2.0.jar itext-pdfa-5.5.13.jar itext-xtra-5.5.13.jar itextpdf-5.5.13.jar? xmlworker-5.5.13.jar jar 파일은 https://mvnrepository.com 에서 다운로드 16.3 실습 예제 16.3.1 /include/admin_menu.jsp 16.3.3 pdf.PdfController.java

    [Design Pattern] 어댑터 패턴 고찰

    어댑터 패턴(Adapter Pattern) 1. 정의 - 연관성 없는 두 객체 묶어 사용하기 - 한 클래스의 인터페이스를 클라이언트에서 사용하고자 하는 다른 인터페이스로 변환합니다. 이 패턴을 사용하면 다른 인터페이스와의 호환성 문제를 해결할 수 있습니다. 2. 의도 - 이미 제공되는 기능이 형태가 달라, 필요로 하는 형태로 변경하고자 할 때 - 활용 - 기존의 클래스를 사용해야 하나 인터페이스가 수정되어야 하는 경우 - 기존 라이브러리 모양을 달리하여 재사용하고자 할 경우 - 예제 - LED 프레임워크가 제공되어졌다. LED를 끄고 RGB 색상으로 켜고 하는 메서드들을 제공받았다. - 정리 - Object Adapter 패턴을 일반적으로 많이 사용합니다. (Adaptee를 멤버변수로 활용하는 방식) -..

    [JSP] 상품관리

    15. 상품관리 15.1 상품관리 실습 예제 일반 사용자: 상품목록 보기, 장바구니 담기, 장바구니 보기 관리자: 상품등록, 상품수정/삭제 15.1.1 상품 테이블 15.1.2 상품이미지를 다운로드하여 WebContent/images 디렉토리에 복사 `google drive 15.1 실습소스 15.1.1 guestbook.sql 15.1.2 /guestbook/index.jsp 15.1.3 /shop/index.jsp 15.1.4 shop.dto.ProductDTO.java 15.1.5 shop.dao.ProductDAO.java 15.1.6 shop/mapper/product.xml 15.1.7 shop.ProductController.java 15.1.8 /shop/product_list.jsp 15..

    [Design Pattern] Observer Pattern

    2. Observer Pattern 옵저버 패턴 또는 번역해서 관찰자 패턴이라고 불리는 이 패턴하면 스타크래프트에 있는 프로토스 유닛이 떠오릅니다. 이 유닛은 상대의 상태를 확인하여 해당 소식을 알려줍니다. 예를 들어, 상대방이 공격 시동을 걸고 있다면 그에 대한 소식을 듣고 대비를 할 수 있겠죠? 이와 마찬가지로 옵저버 패턴이란 어떤 객체의 상태가 바뀌거나 중요한 메서드가 호출되었을 때 이와 관련된 객체들에게 소식을 전달할 수 있는 패턴입니다. 2.1 옵저버 패턴의 정의 2.1.1 한 객체의 상태가 바뀌면 그 객체에 의존하는 다른 객체들한테 연락을 하고 연락받은 객체에서는 자동으로 내용이 갱신되도록 하는 방식입니다. 2.1.2 상태가 바뀌는 객체를 주제(Subject)라고 하고, 그 주제의 상태에 의존..

    [Design Pattern] Strategy Pattern

    1. Strategy Pattern 전략(Strategy) 이란? 어떤 특정한 목적을 달성하기 위해 일을 수행하는 방식을 말합니다. 예를 들어, 비즈니스나 로직 혹은 문제를 해결하기 위한 알고리즘이 해당됩니다. 패턴을 배우기 전에 하나의 프로그램을 만들 때, 객체지향의 원리로 프로그래밍을 한다고 하더라도, 그것이 유연하다고 볼 수 없을 수 있습니다. 행위 = 메서드행위가 계속 바뀔 때, 행위가 늘어날 가능성이 있을 때이걸 상속으로 구현하자 하니 아래의 내부 구현 부분도 건드려야 할 부분이 많아서OCP의 원칙이 어긋난다.그래서 상속보다는 구성을 통해서(레퍼런스 변수) 행위를 객체화해서 행위를 사용하는 객체변수니까 값을 바꿀 수 있다. 행위 클래스를 따로 만듦으로써~? ex. 메서드|행위|function의 ..

    [HTML/CSS] CSS3 레이아웃과 애니메이션

    7. CSS3 레이아웃과 애니메이션 가. block과 inline - block : 한 줄에 한개만 배치h, p, ul, li, table, div, form 등의 태그에 적용됨태그 { display:block; }- inline : 한 줄에 차례대로 배치a, img, input, span 등의 태그에 적용됨태그 { display:inline; } 나. 좌표값 지정 태그 { top:100px; left:200px; right:100px; bottom:200px; } - 정적 위치 설정(static) : 페이지의 정상적인 흐름에 따라 배치태그 { position:static; }- 상대 위치 설정(relative) : 정상적인 흐름을 기준으로 상대적인 좌표에 배치태그 { position:relative; ..

    [PHP] 자료실

    6. 자료실 6.1 파일 업로드 관련 설정 php.ini에서 설정 확인 # gedit /etc/php.ini 옵션 설명 file_uploads 업로드 기능을 사용할지 결정 기본값 On upload_tmp_dir 업로드시 임시 저장될 디렉토리 경로 upload_max_filesize 최대 파일 크기, 기본값 2M → 100M로 수정 post_max_size post 방식으로 전송할 수 있는 최대 용량, 기본값 2M → 110M로 수정 max_file_uploads 최대 업로드 수, 기본값 20개 설정 변경 후 # systemctl restart httpd 첨부 파일이 저장되는 배열의 정보변수 설명 $_FILES['userfile']['name'] 클라이언트 머신에 존재하는 파일의 원래 이름 $_FILES[..

    [JSP] 응용 예제(게시판 & 자료실)

    14. 응용 예제(게시판 & 자료실) 14.1 파일 업로드 14.1.1 cos.jar 다운로드 JSP에는 파일 업로드 기능이 기본적으로 포함되어 있지 않으므로 외부 라이브러리를 사용해야 함 14.1.2 파일 업로드 방법 파일을 테이블의 blob 컬럼에 직접 저장하는 방식 14.1.2.2 파일정보만 테이블에 저장하고 실제 파일은 디렉토리에 저장하는 방식 14.2 파일 업로드 실습 소스 14.2.1 /board/upload.jsp 14.2.2 /board/upload_result.jsp 14.3 게시판 14.3.1 게시판 만들기의 중요성 14.3.1.1 게시판에는 웹프로그래밍이 필요한 중요한 기능들이 많이 포함되어 있음 14.3.1.2 신입 개발자에게 있어서 게시판 만들기는 기본적인 실력이 있는지 판단하는 ..

    [Hadoop] 데이터 분석 실습(Hive)

    6. 데이터 분석 실습(Hive) 6.1 Hadoop 기반의 기술들 6.1.1 MapReduce 6.1.2 Hadoop streaming 펄, 파이썬 등의 다른 언어로 개발 6.1.3 Hive HiveQL로 개발 (페이스북) 6.1.4 Pig pig script로 개발 (트위터) 6.2 Hive 6.2.1 하둡 기반에서 실행되는 라이브러리 6.2.2 자바 코드 대신 SQL 구문을 사용(HiveQL) Hive 2에서 MapReduce 방식의 실행은 아직 가능하나 향후 버전에서는 더이상 지원되지 않을 수 있으므로 Tez, Spark 등의 다른 분산처리 라이브러리를 사용하거나 Hive 1 버전 사용을 권고하고 있음. 6.3 Hive 설치 6.3.1 다운로드 hive-2.3.2-bin.tar.gz 압축파일을 /..