목록분류 전체보기 (70)
진이의 Developer Story
기억이 새록새록납니다.이 시절에는 스프링을 제대로 접해보지 못하고 무작정 만들었던 기억이 나네요. 트랜잭션 처리도 어설프게 설정이 되었고, 허술투점의 프로젝트였죠. 지금 생각해보면 나름 디자인쪽에 신경쓴다고 많이 신경썼었던 것 같네요.=> 알맹이 생각은 못하고 껍데기만 치중했던 것 같습니다. 다시 만든다면 제대로 만들 자신은 있지만...디자인을 다시 할 생각을 하니 항상 접어두게만 되네요... 그 당시 만들었던 프로젝트 사진을 투척해봅니다. 허접하기 그지없네요~ㅋㅋ 마지막으로 이런 프로젝트를 준비하고 계신분들께 한마디 하고 싶다면, 테스트주도 개발을 하셨으면 좋겠어요. 생각보다 프로젝트 규모가 크더라구요...대충 설계하고 만들다가는 중간에 포기하기 쉽습니다... DB는 라이엇에서 제공해주는 DTO 대로 ..
며칠전 linode에서 가상호스팅에 입주했습니다.문득 phpmyadmin으로 디비 로그를 살펴보는데, 현재시간과 맞지 않는 상황이 발생. SELECT NOW(); NOW()2017-01-02 14:53:27 아하... 서버시간이 한국시간과 다르구나...그래서 리눅스에서 시간을 확인해보았습니다. [root@ ~]# date 2017. 01. 02. (월) 15:20:41 UTC 오잉? KST가 아닌 UTC!KST는 한국에서 사용되는 표준시이죠. UTC는 또 뭐람... 해서 알아봤습니다. 협정 세계시(協定世界時, 프랑스어: Temps Universel Coordonné, 영어: Coordinated Universal Time) 또는 UTC는 1972년 1월 1일부터 시행된 국제 표준시이다. UTC는 국제원자..
상대가 내 메일을 읽었을까?학창시절 교수님들께 메일 많이 보내시죠. 내가 낸 과제는 읽었을까...? 출결을 못해서 못한 사유에 대한 메일을 보냈는데 받았을까...? 그러한 수신확인 기능이 제기능을 못할 수도 있다는 사실을 알고 계신가요? 메일서버를 구축하던 도중 신비로운 사실을 발견했습니다. postfix를 SMTP로 사용하며 devocot(pop3)과 조합하여 사용중입니다. 그래서 웹메일 오픈소스 (Roundcube)를 이용하여 웹메일을 구축하였는데, TEST 메일을 보내봤습니다. 네이버 -> 구글로 간 메일을 읽었을 때, 네이버 수신확인에서는 수신처리가 되었는데, 네이버에서 제 SMTP로 보낸 메일은 수신확인이 안되는... 놀라운 일이 ? 이렇게 메일을 보내고 수신확인함으로 이동했습니다. 캡처가 잘 ..
$ wget http://geolite.maxmind.com/download/geoip/database/GeoIPCountryCSV.zip $ unzip GeoIPCountryCSV.zip 일단 국가별 IP를 다운받아줍니다. 압축을 풀어주세요. 파일은 csv 파일 하나 있습니다. (GeoIPCountryWhois.csv) 그리고 아래의 쉘스크립터 명령어를 작성해주세요. 저는 중국발 IP를 전부 차단할 생각이기 때문에 China로 입력했습니다. 리눅스에 로그인을 하게 되면 마지막으로 실패한 아이피가 나오는데, 이를 whois로 검색하시게 되면 어느 국가에서 접근을 시도하는지 알 수 있습니다. 저의 경우는 중국, 인도, 러시아, 프랑스 쪽에서 해킹 시도가 끊임없이 들어왔습니다. 가져갈것도 없는 서버인데 왜 ..
티스토리 블로그는 초대를 통해서만 들어올 수 있죠.이번에 초대장이 생겨서 나눔을 해보려고 합니다. 초대장 받으러 오신분들은 왜 티스토리가 좋은지 당연히 알고 계시겠죠?한마디로 자유도가 높은 블로그 아닐까 싶네요.타블로그와는 다르게 직접 스킨도 만들어서 쓸 수 있고, 플러그인도 직접설치할 수 있죠! 그런데 초대를 해드리기 앞서서 꼭 블로그를 운영하시는 분께만 나눠드리고 싶어요.댓글남겨주시면 몇분 선정해서 보내드리도록 하겠습니다. 댓글에는 아래 예시와 같이 남겨주세요.1. 운영하고자 하는 블로그 컨셉IT지식 공유2. 블로그를 운영하고 싶은 이유알게된 지식을 정리하면서 공부를 하고 싶어요.그리고 IT쪽에 종사하고 계신 분들이 올린 포스팅을 보고 도움이 되었으면 해서요. 등3. 이메일jin3260@gmail.c..
처음 구축하는 경우에만 해당하는 포스팅입니다. 포스팅을 하기에 앞서 여러가지 방법중 제일 효율적인 방법을 적고자 합니다. (1) 외부 사이트 API를 활용. (예시 : 다음 주소검색 API) (2) 우정사업본부에서 제공하는 데이터로 구축 (3) 도로명주소(www.juso.or.kr)에서 제공하는 데이터로 구축 저의 경우는 가장 쉬운 1번과 2번방법을 이용했습니다. (1) 다음 주소검색 API 다음에서 제공하는 js파일과 가이드에서 보여주는 html, 스크립트 코드만 넣으면 쉽게 도로명 주소를 구축하실 수 있습니다. 자체적으로 도로명 주소를 구축하면 좋겠지만, 우정사업본부에서 제공하는 600만건의 데이터, 그리고 인덱스를 잡다보면 용량이 어마어마하게 잡히는 것을 알 수 있습니다. 그리고 주소는 계속 업데이..
@ControllerAdvice public class HTTPErrorHandler { @ExceptionHandler(NoHandlerFoundException.class) public String httpError404() { return "/common/exception/pageNotFound"; } } 위와 같이 컨트롤러를 만들어준다. @ControllerAdvice 어노테이션을 사용한다. (Spring 4.0 이상에서 사용가능) 만약에 4.0 이하라면 web.xml에서 error-list 를 이용하여 처리해야 한다. 해당 방법은 다음 포스팅때 적도록 하겠다. 아래는 web.xml 설정방법이다. spring org.springframework.web.servlet.DispatcherServlet..
심각: A child container failed during start java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/]] at java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.util.concurrent.FutureTask.get(FutureTask.java:192) at org.apache.catalina.core.ContainerBase.startInternal(..
1. Credentials 생성 Credentials을 클릭합니다. (SSH Private Key를 등록해야 합니다) 이 작업을 하기 이전에 public 키와 private 키를 한쌍 만드셔야 합니다. $ ssh-keygen -t rsa Enter file in which to save the key (/root/.ssh/id_rsa): # 경로 적고 엔터 Enter passphrase (empty for no passphrase): # 비밀번호를 쓸 경우 입력하고 아닌 경우는 엔터 이렇게 하시면 ssh-key 한쌍이 만들어집니다. Add Credentials 를 누르시고 Credentials 를 만듭니다. $ vi ~/.ssh/id_rsa vi 편집기로 private key를 열어 복사해주신 후, Ke..
// smtp 서버주소 // port : smtp 서버포트 // 사용자 아이디 // 사용자 비밀번호 // 인코딩 방식 smtp // 메일서버 프로토콜 (smtp) false // 인증여부 (false라면 미인증, 단 서버에서 허용IP 설정이 되어야 함.) true * username 과 password는 인증없이 사용한다면 공백으로 두어도 됩니다. @Resource(name = "mailSender") private JavaMailSender javaMailSender; // DI MimeMessagePreparator preparator = new MimeMessagePreparator() { @Override public void prepare(MimeMessage paramMimeMessage) t..