보물창고/Programming2014.12.21 23:00





스프링 공부 스터디 [유튜브 쉬운 스프링 이야기 Kenu Heo] 동영상 강의 메타 정보

okjsp를 가끔 들어보는데 아래글이 공지로 올라와 보게되었습니다
"스프링 프레임 워크를 어떻게 접근할지 망설여 지는 분" 이 보면 좋은 정보라해서 무심코 봤는데 동영상 강의 내용이 너무 좋아 시간내서 끝까지 다 봤습니다

http://www.okjsp.net/seq/263321

클릭하면 커집니다



아프리카 BJ kenu님의 방송입니다 

http://afreeca.com/kenuheo


방송은 아프리카에서 했고 방송한 동영상이 유튜브에 있습니다 

http://youtu.be/3SqDXVKlq8c?list=PLDMPhWe3CfpYT2jRK0ygZ-IHQyF4H2MD_



총 11일동안 진행한 강좌이며 1시간에서 4시간 사이의 강의로 이루어져 있습니다


아래는 각 동영상을 보면서 진행중인 주제와 시간을 적어 나중에 찾아 갈 수 있도록 정리를 했습니다







  •  동영상 강의 소개
    • http://www.okjsp.net/ 운영자이신 허광남님께서 2014년 4월 아프리카 방송에서 강의한 내용입니다
    • 대부분의 내용이 유투브에 있고 비어 있는 강의가 한둘있으나 전체적인 흐름을 따라가는데는 무리 없는 수준입니다
    • 유투브 링크 : https://www.youtube.com/user/heogwangnam
    • 아프리카 링크 : http://afreeca.com/kenuheo
    • 깨끗한 윈도우에서 초기 하나씩 설치해가면서 강의를 해가는것이 저에게는 큰 도움이었습니다
    • 북마크 : [#3_2 51:50] 세번째 강의부터 이런 글을 남겼는데요 #3은 3일차 _2는 두번재 강의 51분 50초에 해당 내용을 이야기 하고 있다는 표시 입니다 (강의를 들으면서 직접 노트했습니다)

  • 강의 노트 링크 (구글 독)
  • 유투브 동영상 링크
  • 1일차 내용 (윈도우 7가상머신에서 진행)
    • 스프링 소개, 이클립스 설치(Sprint STS), 톰캣 설치
    • java 설치, .m2 설명
    • maven 사용법, 윈도우 사용법 (흔하게 알려지지 않은 팁들을 설명함)
    • 다양한 유틸 소개 : 반디집(압축 프로그램), picpick(캡쳐프로그램), 하루 패드(마크다운툴)

  • 2일차 내용
    • git 사용법
    • jsp, servlet 간단 프로젝트 생성, 간단한 코딩 내용
    • 유용한 이클립스 단축키

  • 3일차 내용
    • 강의 시작전에 잡담
      • 우리나라 상위 1000에드는 사이드인경우 한달 400만원의 광고 수입일 있을거라는 이야기를 함
    • 토비스프링(아프리카에사 스프링을 강의하는 또 다른분을 소개)
    • 버전관리 설명
    • 웹호스팅을 신청
      • 이클립스로 ssh접속
      • 프로젝트를 서버에 올려서 페이지 열리는지 확인
    • 로컬 tomcat연결 mvn package tomcat:run (이렇게 메이븐으로 톰캣을 실행해서 웹페이지를 서비스 할 수 있다)
    • jenkins [#3_2 51:50]
      • 사이트에서 다운로드후 바로 실행
      • java -jar jenkins.jar (이런 형식으로 실행하면 서버가 띄워지면서 웹페이지까지 띄워짐)
    • mariadb(언급만 하고 설치는 안함)
    • 저자 정부 프레임 워크를 이용한 SVN을 이용하려 했으나 git으로 사용하기로함
    • 이클립스 git 이용 [#3_2 57:00]
      • 이클립스에서 git 저장소 연결하는 방법 설명
      • target폴더를 ignore설정하는 내용있음
        • 우클릭 -> team -> ignore [#3_3 01:37]
    • 스프링 SNS에대한 설명 [#3_3 20:45]
      • 로컬로 clone해서 테스트로 구동함 (페이스북 바로 연결됨을 보여줌)
    • jenkins를 이용해서 java코드를 자동으로 서버로 배포하도록 설정 [#3_3 40:03]
    • AngularJS를 이용한 웹 페이지 간단 구현 
      • todo angular [#3_3 50:00]

  • 4일차 내용
    • infoq.com 사이트 소개
    • draw.io 사이트에서 웹 리퀘스트에 대한 내용 설명 (UML 그리는 사이트) [#4_1 21:35]
    • Virtualbox 설치 
      • 첫번재 우분투 설치실패
      • 이후에 다시 시도해서 설치 성공
    • 일반 java를 이용해서 웹페이지 구현
    • jsp를 이용해서 웹페이지 구현 [#4_2 00:00]
      • java코딩과 연결 [#4_2 03:25]
        • 웹에 올림 (export -> war) -> 톰캣
    • 스프링 프레임 워크에서 웹페이지 구현
      • jsp
        • home2.jsp를 만들코 컨트롤에 연결하는 방법 [#4_2 15:08]
      • export war [#4_2 32:30]
      • todos.js 적용 [#4_2 35:12]
        • git 에서 clone해서 적용
    • 이클립스에 전자 정부 프레임 플러그인 설치 [#4_2 54:33] 
    • http req,res설명 [#4_2 57:00]

  • 5일차 내용
    • http req, res설명 [#5_1 10:44]
    • 서블릿  jsp에서 post다루는 방법
      • java로 다루는 것도 이야기함 [#5_1 13:45]
      • java파일을 만들어서 적용 [#5_1 24:35]
        • jsp.useBean추가 설명 [#5_1 26:00]
      • 서블릿 처리 로직 변경 [#5_1 30:07]
    • (??? 이후로 코드를 많이 수정함 정확하게 이해하지 못했음)
    • 위에서 만든 코드를 스프링 코드로 변경 [#5_2 10:30]
      • get설정
      • post설정 [#5_2 21:14]
      • 리다이렉트때 데이터 갱신 안되도록 수정 forward [#5_2 30:39]
      • 트러블 슈팅
    • 오늘 코드 마무리, 수업한 내용 무두 git에 commit

  • 6일차 내용
    • [#6_1] 유트브에 없음 
      • 마리아 DB를 설치한 것으로 예상
      • 7일차 [#7_2 29:27]이후로 복습을 하고 진행함
    • myBatis 사이트에 있는 예제 실행 [#6_2 19:40]
      • myBatis를 이용할 maven프로젝트 생성 [#6_2 26:20]
        • myBatis용 db설정 [#6_2 28:00]
        • 트러블 슈팅
        • 예제용 DB스키마로 테이블 생성 [#6_3 03:56] 

  • 7일차 내용 (윈도우 xp에서 진행, 이유는 모르겠음)
    • [#7_1] 유트브에 없음
      • [#7_2]까지 이어지는 내용인데(sonar설치) 문제가 해결되지 않아 앞부분을 안올린 것으로 보임(???)
      • Sornar 시작 Document따라 설치 [#7_2 01:30]
        • 실행 [#7_3 12:36] 
        • sonarQube다운로드
        • 192.xxx.xxx.xxx:9000 접속 했으나 페이지가 안열림 [#7_3 21:39]
    • 람다 설명 [#7_2 26:50]
    • myBatis 설명 [#7_2 26:01]
      • Maria DB다운로드 [#7_2 29:27]
    • 스프링 jsp에서 mysql드라이버 연결한 샘플 작성 [#7_2 28:00]
      • web.xml에 jdbc 드라이버 정보를 가져오는 xml설정 [#7_2 41:00]
      • context.xml 패스워드 user등을 설정
      • 데이터 소스 익스플로서 이용
    • 이클립스에서 Alt + Shift + a 컬럽 수정 모드로 들어감 [#7_2 44:50]
    • 스프링 jsp코드 커밋함 디비에서 데이터 가져오는것까지 구현 [#7_2 50:10]
    • myBatis 구현시작 [#7_2 52:14]
      • 가위 프로젝트 clone gawi (기본적인 mybatis의 형식을 가짐)
        • 가위바위보 프로젝트 - 안드로이드 프로젝트
        • 다이나믹 웹 프로젝트형식
      • myBatis config 보여줌[#7_2 56:30]
      • 가위바위보 프로젝트 실행 [#7_3 02:45]
        • 익스플로러와 크롬에서 javascript 디버깅하고 있음 [#7_3 07:00]
      • 가위바위보 프로젝트를 maven 코드로 옮김 [#7_3 12:50]
        • 실행되도록 코드들을 좀더 수정함
    • 스프링 코드안에서 jquery.js에 빨간줄인것 해결 방법 [#7_3 22: 10]
    • 작성한 코드 git에 commit and push [#7_3 24:00]
      • class제외 등등
    • git bash 콘솔에서 bower 사용 [#7_3 29:00]
    • 가위바위보 예제의 초기 코드 설명 [#7_3 39:50]
    • ESJ에 대한 설명  [#7_3 38:00]

  • 8일차 내용 (영상에서본 가위바위보 코드를 스프링으로 완전히 옮기는 중)
    • ATOM IO 소개 for MAc git허브에서 만든 텍스트 에디터 [#8_1 07:10]
    • 유투브 6-1, 7-1 일부러 안올림  [#8_1 09:30]
    • 지난 영상에서본 가위바위보 코드를 스프링으로 완전히 옮기는 중 [#8_1 10:20]
      • 아프리가 업데이트 되어서 윈도우 8.1에서 진행  [#8_1 13:20]
      • 로컬 git 프로젝트 파일을 이클립스로 가져오는 방법 소개  [#8_1 14:35]
        • import project
      • 크롭에서 post방식으로 보이는 데이터를 개발자 모드에서 확인  [#8_1 17:40]
        • 다른 탭에서 response값을 확인 할 수 있음
      • url 매핑 query.do하는 방법 설명  [#8_1 20:30]
        • controller class생성  [#8_1 11:23]
        • @requestMapping(value="/query.do",Method=RequestMathod.POST) 어노테이션 추가  [#8_1 22:50]
        • query.do를 위해 jsp수정   [#8_1 26:00]
          • webinf에 붙여넣기
            • query.do 호출 못하는 에러나서 해결 중  [#8_1 27:05]
            • wervlet-context.xml base-package수정하는 것으로 해결  [#8_1 33:40]
        • 페이지 새로고침 관련 livereload.js에 대한 소개 잠깐 [#8_1 32:00]
        • 405 Method Not Allowed - get 방식으로 호출해서 나는 문제 해결 [#8_1 41:10]
        • page utf-8로 변경중 [#8_1 45:50]
          • 변경  [#8_1 47:30]
        • 수정한 코드 커밋  [#8_1 49:15]
        • 웹페이지 디버그 변수 보는 방법 watch, expression  [#8_1 50:50]
      • //sonarqube 설치  [#8_1 58:37]
      • getter setter 사용  [#8_2 00:05]
      • codecompare 사용  [#8_2 00:50]
      • 만드는 웹페이지의 주소 정리  [#8_2 03:30]
      • 크롬브라우져에서 디버깅  [#8_2 06:40]
      • query json을 옮기기 시작  [#8_2 12:10] 
        • query json을 옮기다 오류나서 코드를 초기로 되돌린 후 다시 옮기는 중  [#8_2 33:16] 
        • 옮기는 중, 에러 해결해서 동작함(한글 깨짐) [#8_2 50:36] 
        • 해결해서 다 옮김 [#8_2 55:42
        •  alt + shift + a = 이클립스에서 블록해서 드래그 하는 방법  [#8_2 42:10] 
        • query json 옮기기 완료 [#8_3 11:50] 
        • 웹 페이지 압축 적용 크롬 개발자 도구에서 Audits -> run 웹페이지 퍼포먼스 확인 [#8_3 12:10] 
          • 톱캣 서버에 적용중  [#8_3 13:20] 
            • 중간에 바로 적용 안되어서 다시 설정 min사이즈를 낮춰 설정   [#8_3 19:50] 
            • server.xml
      • 끝  [#8_3 22:33]

  • 9일차 내용 지난 내용 이어서 작성 [#9_1 00:00]
    • 현재 만들고 있는 프로젝트의 MVC모델 설명  [#9_1 05:00]
    • 이클립스 Task에 new Task 일정 등록 [#9_1 15:50]
      • 레코딩? [#9_1 18:53]
      • 레코딩해 놓으면 그때 건드렸던 파일들의 목록을 볼 수 있다 [#9_2 07:20]
    • queryJSON.jsp에 view분리 적용  [#9_1 25:10]
      •  수정 완료  [#9_1 41:50]
      • ctrl + shift + g = 함수가 사용되는 목록을 보여줌  [#9_1 45:10]
      • 뷰 분리 완료 [#9_1 49:50]
    • 이클립스에서 클래스 다이어 그램 그리기 [#9_1 52:05]
      • 제대로 동작 안해서 안함  [#9_1 55:20]
    • 이클립스에 objectaid.net 무료 버전 설치  [#9_1 55:45]
      • 클래스 다이어 그램 추가  [#9_1 58:00]
        • ucls
        • 마무리  [#9_2 06:05]
    • 컨트롤러에서 서비스를 분리  [#9_2 08:20]
      • 추출 완료  [#9_2 18:00]
      • UML 정리  [#9_2 18:20]
      • 서비스 완료  [#9_2 30:10]
    • Autowired에대한 설명, 스프링이 제공하는것과 java에서(jdk에서)제공하는 Resource 차이가 거의 없다는 것을 설명  [#9_2 22:40]
    • WORKING EFFECTIVELY WITH LEGACY CODE책에 대한 설명 번역서도 있음  [#9_2 29:00]
      • strategy pattern 전략패턴에 대한 설명 [#9_2 32:00]
        • 패턴 설명 완료  [#9_2 57:05]
      • alt + shift + n = 매서드 만드는 단축키  [#9_2 38:35]
    • junit test 전체의 80%를 테스트 목표로 함 maven 프로젝트(EMMA적용 엠마 프로젝트 생성 ???)  [#9_2 57:10]
    • 9일차 마무리 [#9_3 00:05]
      • 프로젝트 삭제 안될때 [#9_3 01:30]
      • git push, commit  [#9_3 04:10]
      • .gitignore 생성  [#9_3 05:30]
      • 오늘 만든 포르젝트 UML (잔략 패턴 구조)  [#9_3 09:30]

  • 10일차 데이베이스에대한 강의 [#10_1 00:00]
    • 링크드 리스트 질문들어와서 진행  [#10_1 01:10]
    • josh bloch - java LinkedList 코드 짠 분 - 언급 java puzzlers [#10_1 18:45]
    • 데이터 베이스 연결  [#10_1 30:45]
      • 이클립스 워크 스페이스 변경  [#10_1 31:51]
      • OK.JSConf 1회 좀 다르게 개발하기 유튜브 동영상 소개eBrainUs [#10_1 32:55]
      • 이클립스 톰캣 서버 설정  [#10_1 35:40]
        • 포트 변경 server.xml
        • 브라우저 연결  [#10_1 37:00]
          • 크롬
        • beta.html5test.com 현재 브라우져 점수 매김  [#10_1 38:20]
      • 데이터 소스 익스플로러 설정 mysql jdbc 드라이버 연결 [#10_1 40:00]
        • 메이븐 간단히 설명 [#10_1 41:40]
          • 아파치 메이븐 사이트에 있는 5분에 끝내기 따라 설명 해줌  [#10_1 43:50]
          • mvn site를 이용해서 프로젝트 홈페이지 만듦 [#10_1 48:55]
          • jar manifest 관련 간단히 설명  [#10_1 51:30]
            • manifest관련 설정이 안되어 미룸  [#10_2 11:00]
            • slideshare.net/kenu  2시간만에 자바를 쉽게 배우고 싶어요
          • maven으로 mysql connector 적용  [#10_2 11:05]
            • mvn  compile를 하면 해당 jar를 가져옴
            • 이클립스에서 mysql connector jar를 적용  [#10_2 13:00]
        • 이클립스에서 DB 탐색  [#10_2 14:30]
        • DAO 구성  [#10_2 19:10]
          • UML에 정리  [#10_2 34:35]
        • mybatis쿼리 수정  [#10_2 39:05]
          • string 파라메터 받도록 수정  [#10_2 45:20]
          • mybatis getting started 한글 사이트  [#10_2 48:20]
            • getting started 스터디 시작 [#10_3 02:45]
              • 메이븐 프로젝트 생성 [#10_3 02:45]
              • pom.xml mybatis추가 [#10_3 04:15]
              • getting start 문서 훑기 시작[#10_3 07:00]
              • 이클립스 git으로 mybatis 프로젝트 가져옴 [#10_3 10:00]
              • path tools 설치 [#10_3 23:30]
                • 콘솔로 git 다룸 branch [#10_3 27:00]
                • gitk 명령어로 브랜치 UI로 볼 수 있음 [#10_3 31:49]
              • ctrl + shift + 0 = 자동 import
              • alt + shift + j = 이클립스 코드에 주석 넣는 단축키
              • pom.xml에 mysql-connector-java 추가 [#10_4 07:10]
              • getting started 코드 모두 구성  [#10_4 12:50]
              • mynatis와 merge  [#10_4 04:00]
                • 기존 테스트 하던 코드와 merge
              • 이클립스 단축키 ctrl + k = 같은 문자를 찾음 [#10_4 17:30]
              • 마무리된 시간  [#10_4 37:30]
        • null, "" 차이를 이야기함 (javascript에서) [#10_3 08:30]
        • mybatis예제로 만들어진 프로젝트를  github에 올림 [#10_4 37:34]
        • 방송 마무리 [#10_4 41:00]

    • 11일차 지난 방송에서 했던 mybatis를 이어서 진행 [#11_1 00:00]
      • 질문 확인 - nodejs설치후 실행이 안되는 오류 - 디지털오션VPS제공 회사  [#11_1 04:00]
        • nodejs설치 - 다운로드 [#11_1 06:30]
          • 압축풀음  [#11_1 13:00]
          • make  [#11_1 17:45]
          • make install  [#11_1 38:33]
          • outsideris node 책을 쓴 분의 코드를 git에서 받음  [#11_1 34:33]
            • chapter 08[#11_1 35:35]
              • 테스트문제가 있어서 패스  [#11_1 39:30]
      • 지난 방송에서 manifest문제 해결 내용 리뷰
        • mvn 빌드시 들어가는 파라메터 설명 [#11_1 22:11]
        • 프로젝트 템플릿을 만듦
      • bitbucket.org, git 비공개 할 수 있는 사이트 소개, private이 됨, [#11_1 31:50]
      • heartbleed.com 소개  [#11_1 42:20]
        • 22번포트와 443번 패킷 암호화 해주는 모듈에 버그가 있었음(메모리 덤프를 뜰 수 있는 버그)  [#11_1 43:28]
      • 지난 방송에서 mybatis 삽질 이후 진행  [#11_1 50:30]
        • git에 올라가있는 mybatis 프로젝트를 가져옴 [#11_1 51:10]
          • 이클립스 워크스페이스 초기화 
            • 서버세팅 tomcat  [#11_1 53:10]
              • tomcat설정  [#11_1 53:49]
            • brow 검색 , 기본 웹브라우져 설정  [#11_1 54:20]
              • 외부 시스템 기본 브라우져로 설정
            • java 기본 프로젝트 생성  [#11_1 54:50]
            • 코드 삽실 시작 [#11_2 21:30]
              • datasourceexplorer
            • 데이터 베이스 연결 [#11_2 22:50]
            • maven 프로젝트 생성 [#11_2 26:05]
            • mybatis 세팅, 지난 방송 삽질 축양본 [#11_2 27:50]
              • maven프로젝트에 연결 시작
              • getting started문서로 샘플코드 완성 [#11_2 40:10]
                • 에러나서 해결 [#11_2 44:50], pom.xml mysql deiver추가 [#11_2 45:50]
              • 실행까지 완료 [#11_2 48:46]
          • 질문 들어온것 해결 (데이터 정렬 관련)  [#11_1 56:30]
            • 질문 해결 [#11_2 21:16]
          • exception, throw 차이 설명 [#11_2 40:15]
            • 설명 끝 [#11_2 43:45]

신고





Posted by 파란물

티스토리 툴바