토이 프로젝트44 DataPlay project - 1 : word cloud 생성기 코드 정리 이번 포스팅은 word cloud 를 만들기 위한 전체적인 코드와 찾아봤던 정보들을 정리하기 위한 글을 작성하도록 하겠다. 모든 코드는 git 에 올려두었고, 여기에는 크롤링 -> 데이터 파싱 -> Controller -> html 순으로 정리하도록 하겠다. 1. 크롤링 crewler - 크롤링을 위한 코드는 네이버 블로그 검색 API 와 아래 블로그의 Steele 님의 코드를 약간 수정해서 사용하였다 (주소는 아래 참조에 달아두었습니다) - 나름대로 로직을 이해하기 위해 주석을 달아서 정리하였으나, 보다 자세한 설명은 Steele 님의 글을 보는게 훨~~씬 도움이 되리라 생각한다. package HJproject.DataMining; import org.json.simple.JSONArray; impo.. 토이 프로젝트/Spring&Java 갖고놀기 2022. 5. 10. DataPlay project - 1 : java로 Word Cloud 생성기- 크롤링, API, JSON DataPlay - 데이터 갖고 놀기 - project 얼마전 친구가 나에게 "너 word cloud 워드 클라우드 만들 수 있어?" 하고 물어왔다. 당연히 나는 모른다고 말했지만 친구는 그래도 나름 코딩 공부 비스무리한 것을 했으니 한번 만들어 줄 수 있겠냐고 이야기를 던졌다. 사실 처음에는 거절하려고 했다. 내가 현재 하던 프로젝트도 있고, 공부할것도 많아서 "나 할 줄 몰라" 하면서 넘어가려했다. 다만 거절하기 전에 어떤 로직이 필요한지, 기술이 필요한지 정도는 알아보고 싶었다. 그렇게 여러 내용들을 찾아보다가 java 로도 데이터를 크롤링해올 수 있으며, 나머지를 파싱하고 프론트로 데이터를 보내는 것 뿐이니 의외로 쉽지 않을까...? 라는 바보같은 생각이 들었다. 무엇보다 단순히 웹에서 보여주기 .. 토이 프로젝트/Spring&Java 갖고놀기 2022. 5. 4. 자바 리듬 게임 만들기(5) : 로그인 창, DAO, DTO, 점수창, score board 이전까지는 사실 강의에서 나온대로 거의 그대로 만들었지만, 이번에는 나만의 기능들을 추가해서 만들어보았다. 게임에 추가되는 기능은 다음과 같다. 1. DAO, VO, DTO : DAO 는 DB 와 연결하기 위해서 만들어두는 클래스 DataBase Access Object DTO 는 ValueObject DB 에서 가져온 데이터를 저장하고 db 레코드와 데이터를 매핑하기 위한 클래스이다. 아래 코드에 전부 VO 로 되어있는데 공부하다보니 VO 가 아니라 DTO 를 사용했었던거네요ㅠ.ㅠ 확인하시고 봐주시면 감사하겠습니다 VO라는 것도 있는데 사실 VO 랑 비슷한 느낌으로 쓰인다. 이 3가지는 나중에 한번 더 정리하겠다. 2. 로그인 창 : 게임 실행 시 로그인 창이 존재하고 로그인 후 게임 실행이 가능하도록.. 토이 프로젝트/Spring&Java 갖고놀기 2022. 4. 19. 자바 리듬 게임 만들기(4) 이번 글은 4번째 Note, KeyListener 클래스에 대한 부분입니다. 1. 구현 기능, 목표 및 Main, Dynamic 클래스 2. Game 클래스 3. Track, Music, Beat클래스 4. Note, KeyListener 클래스 1. Note note 클래스는 곡의 Note 들에 대한 정보와 노트 판정 정보를 저장하는 클래스로 다른 클래스들과 마찬가지로 Thread 를 상속받는다. 생성자 Note 메소드에서는 게임에서의 키보드 위치에따라 note의 x 좌표가 어디에 위치해야하는지를 알려준다. screenDraw 는 많이 보아왔던 메소드로 그래픽적 요소를 그려내기 위한 메소드이다. drawImage 메소드를 사용해 어떤 그림을 어떤 위치에 그리고 싶은지 정해준다. drop 메소드는 노트를.. 토이 프로젝트/Spring&Java 갖고놀기 2022. 3. 23. 자바 리듬 게임 만들기(3) 이번 글은 3번째 Track, Music 클래스에 대한 부분입니다. 1. 구현 기능, 목표 및 Main, Dynamic 클래스 2. Game 클래스 3. Track, Music, Beat클래스 4. Note, KeyListener 클래스 1. Track 클래스 트랙 클래스는 곡에 대한 정보를 담기 위한 클래스이다. 정확히는 하나의 곡에 대한 여러 정보들을 하나의 객체로 묶어두기 위한 클래스라도고 이야기할 수 있겠다. 앞서 Dynamic Music 에서 ArrayList 로 Track 객체 배열을 만들었다. 이후 Track 클래스 객체를 만들어서 해당 객체를 배열에 넣어준다고 했는데 이때 사용되는 것이 Track 클래스이다. Track 클래스의 객체는 제목이미지, 게임 메뉴 이미지, 곡 선택 시 이미지, .. 토이 프로젝트/Spring&Java 갖고놀기 2022. 3. 22. 자바 리듬 게임 만들기 (2) : Game(feat. 노트찍기모드) 2022.03.20 - [토이 프로젝트/따라하면서 배우기] - 자바 리듬 게임 제작 (1) : Main, DynamicMusic 클래스 자바 리듬 게임 제작 (1) : Main, DynamicMusic 클래스 이제 자바 공부도 한지 몇개월정도 지난것 같습니다. 이제부터는 기초 공부와 겸해서 내가 원하는 것, 내가 하고 싶은 것을 좀 더 만들어보기로 하였습니다(지금까지도 그랬지만...ㅋㅋ) 그래서 terianp.tistory.com 이번 글은 2번째 Game 클래스에 대한 부분입니다. 1. 구현 기능, 목표 및 Main, Dynamic 클래스 2. Game 클래스 3. Track, Music, Beat 클래스 4. Note, KeyListener 클래스 1. Game 클래스 : 리듬 게임을 동작시키기위한 .. 토이 프로젝트/Spring&Java 갖고놀기 2022. 3. 21. 자바 리듬 게임 만들기 (1) : 구현목표, Main, DynamicMusic 클래스 이제 자바 공부도 한지 몇개월정도 지난것 같습니다. 이제부터는 기초 공부와 겸해서 내가 원하는 것, 내가 하고 싶은 것을 좀 더 만들어보기로 하였습니다(지금까지도 그랬지만...ㅋㅋ) 그래서 생각한게 바로 따라하면서 공부하기 였습니다. 안타깝게도 아직은 Java 를 능숙하게 따라가지 못하고 있고, 각 라이브러리의 메서드나 그런 것들에 대해서 무지하다고 생각하였습니다. 그래도 하고 싶은게 많았으니...결국 다른분들이 만든 것들을 보고, 강의를 보고 열심히 따라하면서 배우고자 합니다 물론 무조건 따라하는 것은 아니고, 따라하면서도 제 나름대로 구현 목표를 갖고, 기본적인 기능 외 목표로한 부분을 구현하는 것을 목표로 달려갈 예정입니다. 사실 하나의 글에 정리하고 싶었는데...생각보다 많아져서 여러번에 걸쳐 정.. 토이 프로젝트/Spring&Java 갖고놀기 2022. 3. 20. Spring - DB 구조 변경 및 회원가입 스크립트 수정 오늘 내용의 포인트!! DB 테이블 설계는 미리미리 - DB 와 테이블, 컬럼명은 처음에 사이트를 만들때부터 만들어두어야 한다는 것을 뼈저리게 깨달았다. 물론 함부로 DB 를 고쳐서는 안된다는 것을 일하면서 알기는 알았는데...설마 이렇게까지 스노우볼이 클 줄은 정말 몰랐다. 단순히 아주 단순히 테이블 명도 아니고 컬럼 명만 몇몇개 바꿨을 뿐인데 고쳐야하는 부분이 여기저기에서 계속 속출했다. 특히나 Spring - Member 테이블쪽과 2차로 메일 서버와 연동되는 부분에서도 정말 많은 부분을 고쳐야했다. - DB 는 절대 함부로 고치는게 아니며, 단순히 컬럼명을 변경하는 것만으로도 스노우볼이 엄청나고, 처음부터 테이블 구조 설계를 잘해서 만들어야한다!! 1. DB 구조 변경 현재 DB 구조는 컬럼명도 .. 토이 프로젝트/Spring&Java 갖고놀기 2022. 2. 25. 회원가입 시 아이디 중복 체크(feat. ajax, json) 지난번까지해서 이메일을 회원가입에 연동하는 것까지 마무리하였다. 다만 기존의 회원가입에는 부실한 부분이 너무 많았다ㅠㅠ 현재 가장 큰 문제는 아이디 중복 체크 부분이었다. 이전에 만들어두었던 checkDuplicateID 덕분에 백엔드에서 중복 체크를 하고는 있지만 딱 거기까지...중복이 되는 아이디가 있다고 한다면 뭔가 얼럿 창이 뜨는 것이 아니라 바로 에러페이지로 넘어가버린다는 문제점이 있다ㅠㅠ 이를 해결하기 위해서 코드를 수정해보았다. # 이 부분은 검색하고 찾아보고 베끼고...나름 이해하고 하면서 쓴 글이기 때문에 틀린 부분이 많을 수 있습니다. 지적주시면 감사히 받겠습니다. 0. build.gradle Json 형식으로 데이터를 주고 받기 위해 build.gradle 에 아래 내용을 추가한다. .. 토이 프로젝트/Spring&Java 갖고놀기 2022. 2. 13. spring - DB + 메일 서버 + 웹페이지 연동하기(feat. 회원 가입 후 메일 계정 자동 생성) 오늘은 드디어 정말 하고 싶었던 메일서버와 회원 가입 연동을 시작하겠습니다!! 예전부터 정확히는 메일서버를 만든다는 생각을 했을 때부터 만들고 싶었던 것인데 드디어 성공했습니다ㅎ - 왜 메일 서버인가? 사실 왜 매번 메일 서버와 웹 페이지를 연동하고 싶다고 언급했는지부터 잠깐 이야기하고 넘어가겠습니다. 제가 생각하고 비슷하게나마 구현해보고 싶었던 것은 네이버와 구글입니다. 정확히는 네이버와 구글처럼 웹 사이트 + 검색 기능 + 메일 기능 등을 포함하는 진짜처럼 만들어보고 싶었습니다. 먼저 검색 기능은 공부하다보니 엘라스틱 서치로 검색 엔진을 구축 할 수 있다고는 하는데...제 능력을 넘어도 한참 넘은 것 같았고, 그나마 할 만한 것이 웹 사이트와 메일 기능을 연동하는 것이었습니다. 사실 메일 기능은 메일.. 토이 프로젝트/Spring&Java 갖고놀기 2022. 1. 31. 메일 서버 구축하기 dovecot, postfix - (6) mysql + postfix + dovecot + Thunderbird 연동하기 오늘은 드디어 마지막 입니다. 이전에 연동되었던 mysql + postfix + dovecot 을 외부 메일 프로그램인 Mozilla Thunderbird 와 연동해보도록 하겠습니다. 단순히 연동만 하는것이기 때문에 짧은 글이 될 것이고, 제 git 주소에 연동을 위한 설정 파일들을 올려두겠습니다. 혹시나 설정 파일이 필요하신 분들은 git에 올라간 파일들을 참고해주시면 되겠습니다. 1. 메일 서버 설정 - 메일 서버 주소 : mail.hjproject.kro.kr - 사용 포트 : SMTP(25) , SMTPS(465) , POP3(995), IMAP(993) => POP3 대신 IMAP을 사용하겠습니다. 이때 SMTP 는 꼭!! 반드시 꼭!! 기본 포트 번호로 열어주셔야 합니다. 이는 아무리 제가 설.. 토이 프로젝트/서버갖고 놀기 for DevOps 2022. 1. 29. 메일 서버 구축하기 dovecot, postfix - (5) mysql + postfix + dovecot 연동 6. Mysql 과 메일 서버 연동 및 최종 연동 확인 : 여기는 연동 과정만 작성하고 outlook 연동은 다음글에 작성하겠습니다. 드디어!! mysql + postfix + dovecot 연동을 마치고 연동하고 실제 메일 수신, 발신까지 연동하는 글을 쓰게 되었습니다. 다만 글을 쓰면서도 걱정스러운 부분은 얕은 지식으로 겨우 연동을 한 것이고, 글을 쓰는 것이기 때문에 분명 중간중간 틀린 부분이 있을 수 있습니다. 또한 사용자의 환경에 따라서 제 설정파일 그대로 쓰더라도 안 되는 경우가 있을 수 있습니다. 무엇보다 설정하시면서, 정말 많은 오류가 나올 것입니다. 제가 그랬거든요ㅠㅠ. 사실 관련 오류를 하나하나 다 적어가면서 여기 해결방법을 쓰고 싶었는데, 너무나 많이 발생해서 솔직히 적어두지는 못하였.. 토이 프로젝트/서버갖고 놀기 for DevOps 2022. 1. 26. 이전 1 2 3 4 다음 728x90 반응형