파이썬의 장점

  1. Guido가 생각했던 Python 문법적 특징은 들여쓰기를 철저하게 지키도록 언어를 설계
  2. 가독성이 좋음
  3. ... 놓침
  4. 파이썬 코드는 재사용하기 쉬움
  5. 코드의 분석이 쉽기 때문에 다른 사람이 작성한 코드를 받아서 작업하는 사람들이 훨씬더 작업이 편리
  6. 생태계가 좋음


파이썬의 구현

  1. C파이썬 : C로 작성된 인터프리터를 사용하는 일반적인 파이썬. ipython이라고도 함
  2. 스택리스 파이썬 : C 스택을 사용하지 않는 인터프리터
  3. 자이썬 : 자바 가상 머신용 인터프리터
  4. IronPython : .NET용
  5. PyPy : 


사용가능한 플랫폼

  1. 윈도
  2. 매킨토시
  3. 각종 유닉스
  4. 리눅스
  5. 팜 OS
  6. 노키아 시리즈 60


파이썬의 활용분야

  1. GUI Programming : 기본 모듈인 Tkinter 이용
  2. Web Programming : django framework
  3. Game Programming : PyOpenGL
  4. Database Programming(빅데이터 연관)
  5. Text 처리
  6. 수치 연산(Numeric Python, networkx)
  7. 병렬 연산
  8. IoT : 라즈베리 파이
  9. C, C++, Java와 결합한 Programming
  10. data 분석 분야 : NumPy, Pandas, Scipy
  11. 시각화 : Matplotlib


'IT 공부 > 과거의 흔적들' 카테고리의 다른 글

[spring] 파일 업로드  (0) 2017.06.22
[Spring] 스프링 시작  (0) 2017.06.14
답변형 게시판 - 2  (0) 2017.06.14
[Cent OS]리눅스  (0) 2017.06.14
답변형 게시판  (0) 2017.06.13

첨부파일 등록

  • 사용처리 프로세스
    • 게시판 등록 화면에서 여러 첨부파일 등록
  • 프로그램 처리 프로세스
    • DB 설계
      첨부파일 table / key / 게시판 no(참조키) / 파일명 / 기타 / 등록일
  • 게시판 등록 화면 처리
    • <form enctype="multipart/form-data">
          <input type="text" name="name" />
          <input type="file" name="report" />



Spring 첨부 파일 필요 부분

  • 파일을 업로드/다운로드 하는 viewResolve setting이 필요
    • dispatcher-servlet.xml에 파일 업로드/다운로드 모듈 설정
      • 파일 업로드 모듈
            <bean id="" class="org.springframework.web.multipart.commons.CommonMultipartResolver" />
      • 파일 다운로드 모듈
            사용자 정의로 클래스 선언
            ex) <bean id="" class="springweb.z01_util.A03.DownloadViewResolver" />
  • json이나 파일 처리 시 필요로 하는 viewResolver 선언
<bean id="bnViewResolver" class="org.springframework.web.servlet.BeanNameViewResolver" >
<property name="order" value="0" />    // 최우선 사항



첨부파일 처리 시 Ctrl / Server

  • Controller에서 Param
    • view단
          <input name="id" />
          <input type="file" name="report" />
    • controller
          list(@RequestParam("id") String id){}
          list(@RequestParam("report" MultipartFile report){}
  • MultipartFile를 물리적 저장, DB 저장
    • getOriginalFilename() : 업로드 파일명
    • transferTo("저장할 경로 파일 객체")
    • FileInputStream, FileOutStream을 통해서 전달받은 파일을 서버에 특정한 위치로 저장
    • DB에 getOriginalFilename() 로 DB insert


'IT 공부 > 과거의 흔적들' 카테고리의 다른 글

[Python] 파이썬 시작!  (0) 2017.07.18
[Spring] 스프링 시작  (0) 2017.06.14
답변형 게시판 - 2  (0) 2017.06.14
[Cent OS]리눅스  (0) 2017.06.14
답변형 게시판  (0) 2017.06.13

Spring Framework

: 복잡한 엔터프라이즈 애플리케이션 개발을 겨냥. 단순성, 테스트 용이성, 느슨한 결합성의 측면이 스프링의 이점




Spring MVC


그림



Spring Module

  • Core
    • framework에서 가장 기본적인 부분. 의존성 삽입(Dependency Injection) 기능을 제공
  • DAO
    • JDBC 코딩과 Database 업체 별 특정 처리할 필요 없는 JDBC 추상화 레이어 제공
  • ORM
    • 객체 관계 mapping API를 위한 통합 레이어 제공. " Mybatis " 활용하여 DB를 효율적으로 처리
  • Web
    • 화면 view뿐만 아니라 웹에서 파일 업로드 / 다운로드
  • MVC
    • 웹 application의 모델2 패턴을 스프링에서 지원


Spring 개발환경처리

개발환경 구성 방식
framework 구조


'IT 공부 > 과거의 흔적들' 카테고리의 다른 글

[Python] 파이썬 시작!  (0) 2017.07.18
[spring] 파일 업로드  (0) 2017.06.22
답변형 게시판 - 2  (0) 2017.06.14
[Cent OS]리눅스  (0) 2017.06.14
답변형 게시판  (0) 2017.06.13

게시물 등록

  • 프로세스
    • 메인화면에서 등록 버튼 클릭
    • 등록 화면
          제목, 내용, 패스워드, 작성자, 이메일
          등록 처리
    • 메인 화면에서 등록된 list 확인
  • 개발 순서
    • DB SQL 작성
    • DTO 구성 내지 선택
    • DAO(Repository)
    • 화면 구성 : DTO 연결되는 name 부분
    • Controller 연결 처리 / Service, DAO


초기 화면 구성

  • main에서 연결하는 등록화면. Controller로 등록할 수 있도록
    • akfj;sdfj;


답글 처리 프로세스

  • 메인화면
    • 해당 글을 더블 클릭 시, 상세화면으로 이동
  • 상세화면
    • 답글 달기, 수정처리, 삭제
    • 답글 메뉴 버튼 클릭 시 출력
  • 답글 화면
    • RE: 메인 글제목
    • 내용 : ---------- 기존 글 내용 -----------
    • 답글 등록 버튼 클릭, 답글 등록처리. 메인화면에 처리


답글 처리 프로그램

  • 메인화면
    • jquery 해당 글을 더블 클릭 시, 상세화면 이동
  • 상세화면
    • Controller - view(jsp) : 화면 구성
    • 모델 데이터 - 단일 data 로딩
      • DAO, mybatis.xml, Service 연결, Controller에 모델처리, 화면단에서 호출
    • 답글 메뉴 버튼 클릭 시 처리해야할 화면, DB
      • submit로 key값 no 전달
      • DB : 단일 data 로딩(Service) : 제목에 [RE:] 첨부 / 내용에 -------------------- 첨부
      • 답글 화면 구현
  • 답글 화면
    • 답글화면 로딩
    • 답글처리 등록
      • refno : 원본 글의 no를 입력처리

  • 메인화면
      • 계층형 sql
        • select * from board
          where ...
          start with refno = 0
          connect by prior no = refno
      • 화면단
        • 해당 답글의 level(단계) 표시


'IT 공부 > 과거의 흔적들' 카테고리의 다른 글

[spring] 파일 업로드  (0) 2017.06.22
[Spring] 스프링 시작  (0) 2017.06.14
[Cent OS]리눅스  (0) 2017.06.14
답변형 게시판  (0) 2017.06.13
[mybatis] 동적 SQL 처리  (0) 2017.06.13

리눅스 기본 명령어

rm : remove 파일이나 디렉토리를 삭제할 때 쓰는 명령어.

권한 설정이 필요. root 사용자는 모든 권한이 있으므로 삭제 가능

기본형식

rm [옵션] 파일명, rm [옵션] 디렉토리명

옵션

-i : 삭제할 지 확인 메세지 출력 (default)

ex) rm -i abc.txt

-f : 삭제 시 확인하지 않고 바로 삭제(force)

-r : 해당 디렉토리를 삭제할 때 활용

-rf : 디렉토리에 파일이 있을 때, 디렉토리 / 파일 삭제


mv : move 파일이나 디렉토리의 이름을 변경하거나 다른 디렉토리로 이동

기본형식

mv 원본파일명/디렉토리

ex) mv abc.txt /etc/sysconfig

mv 원본파일명 변경할파일명

ex) mv abc.txt ccc.txt

mv 이동할파일1 이동할파일2 ... 디렉토리    (파일은 여러 개 가능)

ex) mv abc.txt def.txt /etc/sysconfig


mkdir : make directory 디렉토리를 만든다


rmdir : remove directory 디렉토리를 지움


cat : concatenate


head, tail : 시작과 끝라인. 파일의 앞 뒤 10행을 화면에 출력할 때 활용

형식 : head -라인수 파일명

ex) head abc.txt            abc.txt 파일의 앞 10줄 출력

head -5 abc.txt        abc.txt 파일의 앞 5줄 출력

tail -5 abc.txt          abc.txt 파일의 뒤 5줄 출력


more : space, B 텍스트 형식으로 적성된 파일을 페이지 단위로 화면에 출력할 때 활용

space : 다음 페이지 이동, B : 앞 페이지 이동, Q : 종료

ex) more aaa.txt

more + 시작할 행번호 aaa.txt    : 해당 행 번호부터 출력



less : 텍스트 형식으로 작성된 파일을 페이지 단위로 화면에 출력할 때 사용

more 활용되는 key + PgUp, PgDn


file : 해당 파일의 종류 표시

dlkfsjldkfs

'IT 공부 > 과거의 흔적들' 카테고리의 다른 글

[spring] 파일 업로드  (0) 2017.06.22
[Spring] 스프링 시작  (0) 2017.06.14
답변형 게시판 - 2  (0) 2017.06.14
답변형 게시판  (0) 2017.06.13
[mybatis] 동적 SQL 처리  (0) 2017.06.13

Database 설계

결과화면 (화면 UI)

답변형 list로 paging 처리된 게시판

조회 : 글제목, 글내용, 작성자

버튼 : 조회, 등록, exceldown

한라인의 글을 클릭 시, 상세화면이 나타나고 답글 수정 삭제 다운로드

pageSize : 한 페이지 몇 개의 data를 list할 것인가

pageBlock : 여러 페이지를 번호를 붙여서 나타낼 때 쓰이는 block, blockSize

결과화면에 따른 내용처리



처리 프로세스

초기화면

조회화면

등록 버튼

상세

paging처리 - page block에 해당하는 page 번호를 클릭, 이동

등록화면



주요 기능

초기 글 리스트 화면

답변형 계층구조

등록화면

첨부파일

상세화면

수정, 삭제



구현 순서

화면 ui 결정 및 프로세스 결정

초기화면(html, css)

DB 설계

ERD, table 생성

각 화면단에 활용할 SQL 구현

계층형 SQL 구현(답변 처리)

위 SQL에 mapping되는 VO, DTO 클래스 구현



초기 화면 구성

ctrl
공통 RequestMapping를 클래스명 위에 선언
각 기능별 mtd.에 params = "method=list"
view
검색항목
제목, 작성자, 내용
list 항목
번호, 제목, 작성자, 작성일


DB 설계

관리할 data List
list table : num(key), 제목, 내용, 패스워드, 작성자, 읽은 수, 등록일, e mail
첨부파일 table : num(key), 파일명, 생성일
sequence : board_seq


'IT 공부 > 과거의 흔적들' 카테고리의 다른 글

[spring] 파일 업로드  (0) 2017.06.22
[Spring] 스프링 시작  (0) 2017.06.14
답변형 게시판 - 2  (0) 2017.06.14
[Cent OS]리눅스  (0) 2017.06.14
[mybatis] 동적 SQL 처리  (0) 2017.06.13
  <script type="text/javascript">
    alert("SyntaxHighlighter");
  </script>


'IT 공부 > 과거의 흔적들' 카테고리의 다른 글

[spring] 파일 업로드  (0) 2017.06.22
[Spring] 스프링 시작  (0) 2017.06.14
답변형 게시판 - 2  (0) 2017.06.14
[Cent OS]리눅스  (0) 2017.06.14
답변형 게시판  (0) 2017.06.13

+ Recent posts