달력

3

« 2019/3 »

  •  
  •  
  •  
  •  
  •  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  •  
  •  
  •  
  •  
  •  
  •  
2014.11.17 21:21

전자정부프레임워크 CRUD 장난감2014.11.17 21:21

오랜만에 올려보는 '장난감' 카테고리다.

한 때는 여러가지를 해보곤 했으나, 언젠가부터 시간이 허락하지 않게 되었다.

간만에 다시 올려본다.


요즘 공공기관들은 전자정부프레임워크를 이용해서 사이트를 오픈해야한다.

서울시는 워드프레스를 이용하여 홈페이지를 구축해서 무언가 서울은 거꾸로 가는 느낌이 있으나,

서울이 아니라면 전자정부프레임워크로 개발을 해야 가산점이 있는듯 하다.
서울은 돈이 많으니 여러가지 시도가 가능한가보다.


전자정부프레임워크에는 사이트의 기능 구성인 CRUD를 자동으로 만들어 주는 기능이 있다.

실제 이 프로그램을 실행시켜보면 약간 실망을 감출 수 없을 것이다.

기본적인 버그부터 시작해서 이를 기본적으로는 사용할 수 없다.

꼭 절대로 환경에 맞춰 수정해야한다.


DBMS 에 따라 DAO 에 상속받는 클래스가 달라지는 부분과, 기본적인 sql 오류들 등이 대표적일 것이다.

이것들은 기본적인 오류고, 개발시 자신들의 입맛에 맞춰 CRUD를 다시 고쳐쓰곤 하는데, 역시 대부분 같은 일의 반복이어서 아마 대부분의 사람들도 일부는 복사하기, 수정하기, 붙여넣기등으로 기본 골격을 고쳐쓸 것이다.


나도 마찬가지인데, 매번 메모장의 것을 relplace 하여 붙여넣기 하던 것을 이번에 GUI 넣어 좀더 편하게 구성해보았다.

꼭 생성되어야 하는 파일들과 위치들을 조정하고, DBMS에 따라 조금씩 달라지는 부분을 고치고, 또 우리의 입맛에 맞게끔 기본 골격도 고쳤다.


DB 접속정보만 주면 controller, service, dao, vo, xml, js, jsp 등을 기본적으로 만들어준다.

나머지는 커스터마이징이다.

굉장히 손쉬어졌다. 후후





'장난감' 카테고리의 다른 글

전자정부프레임워크 CRUD  (0) 2014.11.17
모바일 로또  (0) 2010.03.16
네이트온으로 쪽지 전달하기  (0) 2010.01.27
Daum Dictionary  (0) 2009.10.31
접속자 리스트 표시 - 쎄지오 웹솔루션  (0) 2009.06.25
구글 날씨 for Java  (0) 2009.05.21
Posted by 에드몽단테스
2010.03.16 00:01

모바일 로또 장난감2010.03.16 00:01

모바일 버전의 로또입니다. 특별한 기능은 없고 그냥 회차의 번호와 당첨금만 확인할 수 있습니다.

로또 사이트를 크롤링해서 정보를 얻었습니다.
정규식을 공부하던 차에 일종의 테스트 프로그램으로 만든건데, 정말 좋네요.
왜 정규식을 이제서야 알았는지 아쉬운 마음도 듭니다.

정규식 테스트로 끝내기는 아쉬워 특별히 모바일 사이트로 구성을 했습니다.
시간이 좀 더 있어서 HTML5로 했다면 더 좋았겠네요.

사용자 삽입 이미지
 
사용자 삽입 이미지

'장난감' 카테고리의 다른 글

전자정부프레임워크 CRUD  (0) 2014.11.17
모바일 로또  (0) 2010.03.16
네이트온으로 쪽지 전달하기  (0) 2010.01.27
Daum Dictionary  (0) 2009.10.31
접속자 리스트 표시 - 쎄지오 웹솔루션  (0) 2009.06.25
구글 날씨 for Java  (0) 2009.05.21
Posted by 에드몽단테스
2010.01.27 15:06

네이트온으로 쪽지 전달하기 장난감2010.01.27 15:06

게시판에 글이 등록되거나 혹은 다른 곳에서 발생된 이벤트를 실시간으로 알 수 있는 방법이 없을까?

요즘 많이 사용하는 방법으로는  게시판에 글이 등록되면 SMS로 문자가 오도록 하는 것이다.

간단하면서도 명료하고 실시간적이라는 장점이 있지만, 약간의 비용(?)이 든다는 단점도 있다.

그래서 실시간으로 알아야할 알림메세지가 있다면 sms 를 이용하지 않고 네이트온의 쪽지로 메세지가 오게 하고 싶었다.

물론 항상 네이트온을 켜놓고 있어야 한다는 경우가 가정이 되어야 한다.

참고로 나는 회사에서 업무로 네이트온을 메신저로 이용하기 때문에 항상 접속상태에 있다.

참 좋은 경우의 수이다.


예전에 네이트온 클론을 만들려고 하다가 도중에 그만 두었던 프로젝트가 있었는데,

그것을 그대로 이용하기로 했다.

네이트온 라이브러리가 만들어질 당시의 네이트온 프로토콜과 현재 프로토콜의 버전이 달라져 변경된 부분이 있었는데,

많지 않아 라이브러리를 조금 수정했다.

당시 친구목록 구현과 대화기능을 작업중이었는데, 친구목록은 그대로 이용하고 대화기능은 제거해버렸다.

그리고 이번에 쪽지 기능을 추가하였다.


원리는 간단하다.

가상의 봇계정을 하나 만든다. 그리고 이 봇에게 여러명의 친구를 등록시킨다.

외부에서 실시간으로 알림메세지가 발생하면 이 봇이 설치된 서버에 접속해 봇에게 메세지를 전달한다.

봇이 메세지를 받으면 해당 사용자에게 쪽지를 보내는 방식이다.


우선, 메신저를 실행시키고 로그인을 한다.

친구 추가 및 요청기능이 없기 때문에 미리 네이트온으로 계정을 모두 등록한 후 같은 계정으로 다시 로그인 한다.




이 봇은 보는바와 같이 아무런 기능이 없다. 대화를 요청해도 답이 없고 아무런 반응이 없다.


이제 메세지가 발생했을 경우, 이 봇이 설치된 메신저에 접속하여 특정한 메세지를 전달해보자.


아래는 샘플이다.


public class NateonMsgSendTest {
    public static void main(String[] args) throws Exception{
        String email = "hong@nate.com";  // 상대방 이메일 주소(로그인 아이디)
        String msg = URLEncoder.encode("안녕하세요\r\n반갑 습니다.", "UTF-8");
       
        Socket socket = new Socket("127.0.0.1", 5007);
        DataOutputStream dos = new DataOutputStream(socket.getOutputStream());
        String protocol = "IMSG "+email+" "+msg;
        dos.write(protocol.getBytes());
        if(dos != null)
            dos.close();
        if(socket != null)
            socket.close();
    }
}




접속할 주소에 5007번으로 접속하여 메세지를 보낸다.


"IMSG "+email+" "+msg;

 

IMSG : 쪽지전송 프로토콜

email : 상대방 이메일주소(네이트온 로그인 아이디). 여러명에게 보낼 경우 콤마를 구분자로 붙여 보낸다.

msg : 메세지 (UTF-8로 된 문자열이며 URLEncode 하여 전송한다.)


위와 같이 메세지를 보내면 아래와 같이 쪽지가 도착한다.



 

항상 네이트온을 켜두는 경우에는 재미있게 사용할 것 같다.



'장난감' 카테고리의 다른 글

전자정부프레임워크 CRUD  (0) 2014.11.17
모바일 로또  (0) 2010.03.16
네이트온으로 쪽지 전달하기  (0) 2010.01.27
Daum Dictionary  (0) 2009.10.31
접속자 리스트 표시 - 쎄지오 웹솔루션  (0) 2009.06.25
구글 날씨 for Java  (0) 2009.05.21
Posted by 에드몽단테스
2009.10.31 00:54

Daum Dictionary 장난감2009.10.31 00:54

다음의 open api 를 이용한 사전입니다.

국어사전 및 영어사전 기능이 있습니다.


윈도우의 경우 좋은 사전프로그램이 많이 있습니다. 개인적으로는 야후의 미니사전을 주로 이용했는데

주 OS를 리눅스를 쓰다 보니 그럴싸한 사전을 찾을 수 없었습니다.

기본으로 내장되어 있는 사전은 영영사전이여서 주로 네이버나 다음의 사전을 이용했는데,

매번 웹사이트를 띄우려니 번거롭기가 그지 없더군요.

예전에 네이버 api로 사전을 만든 것이 있었는데, 결과값으로 주는 xml 값이 단어설명이 아닌 단어 설명이 있는 웹사이트 주소여서 웹사이트를 띄우는 번거로움은 마찬가지였습니다.

그 후 daum에서 맨처음 일본어 api를 제공하더니 곧 국어사전과, 영어사전을 제공했네요.

아무튼 매번 웹사이트를 띄우는 것은 작업도중 집중력을 떨어 트리는데 일등 공신이기 때문에 간단한 어플을 만들어봤습니다.


 

단어 입력창에서 위 또는 아래 화살표 버튼을 누르면 한영, 영한으로 기능이 변경됩니다.

참~ 쉽죠잉?


프로그램 : DaumDic.jar

소스 다운로드 : DaumDic.zip

'장난감' 카테고리의 다른 글

모바일 로또  (0) 2010.03.16
네이트온으로 쪽지 전달하기  (0) 2010.01.27
Daum Dictionary  (0) 2009.10.31
접속자 리스트 표시 - 쎄지오 웹솔루션  (0) 2009.06.25
구글 날씨 for Java  (0) 2009.05.21
Me2Java ver 0.9 Release!  (0) 2009.04.07
Posted by 에드몽단테스

쎄지오 웹솔루션에서 동작하는 접속자 목록 표시입니다.

플렉스 공부하면서 적용해 볼 곳을 찾아보다가 구현이 어렵지 않아 붙여보았습니다.

말이 구현이 어렵지 않다할뿐이지 생각하는 바를 더 추가하기가 쉽지 않네요. 그냥 막막합니다.

 

 

대화명은 닉네임으로 표시했고, 홈페이지에 접속중인 사용자는 파란색, 쎄지오 메신저에 접속한 사용자는 노란색 아이콘을 사용했습니다.

갱신시간은 1분입니다.

'장난감' 카테고리의 다른 글

네이트온으로 쪽지 전달하기  (0) 2010.01.27
Daum Dictionary  (0) 2009.10.31
접속자 리스트 표시 - 쎄지오 웹솔루션  (0) 2009.06.25
구글 날씨 for Java  (0) 2009.05.21
Me2Java ver 0.9 Release!  (0) 2009.04.07
자바 애플릿 채팅  (0) 2009.03.31
Posted by 에드몽단테스
2009.05.21 02:08

구글 날씨 for Java 장난감2009.05.21 02:08

구글 비공식 날씨 api를 이용한 날씨 정보 애플리케이션입니다.

개인적으로 자바를 좋아하는데 요즘 들어 자바로 프로그래밍할 기회가 별로 없네요.

Swing 관련하여 Layout 감을 잊지 않으려고 열심히 이틀 투자했습니다.

역시 Swing Layout 은 BoxLayout 이네요.

수평, 수직, 정렬들이 끝내줘요~ 

 

구글날씨

 

다운로드 : JWeather.jar


'장난감' 카테고리의 다른 글

Daum Dictionary  (0) 2009.10.31
접속자 리스트 표시 - 쎄지오 웹솔루션  (0) 2009.06.25
구글 날씨 for Java  (0) 2009.05.21
Me2Java ver 0.9 Release!  (0) 2009.04.07
자바 애플릿 채팅  (0) 2009.03.31
사다리 게임  (0) 2009.03.31
Posted by 에드몽단테스
2009.04.07 17:01

Me2Java ver 0.9 Release! 장난감2009.04.07 17:01

Me2Java


회사안에서 커다란 웹페이지 띄어가며 미투질하기에는 부담감이 있어 몰래 미투를 하기위해(비굴...) 자바로 구성해봤습니다.
공개된 라이브러리 사용해서 약 나흘정도 걸렸습니다.

주요기능은 새글쓰기, 마지막으로 등록된 글의 댓글보기, 댓글쓰기입니다.
다른 사람의 글을 보거나 댓글을 쓸수는 없고 오직 내글을 쓰거나 내 글에 댓글을 달 수 있는 정도입니다.
그밖에 기능으로는 트레이아이콘을 추가했고, 처음시작하면 마지막으로 사용했을 때의 위치와 크기 그대로 로드되는 점, 그리고 글등록시 아이디와 사용자키를 입력하면 두번다시 입력할 필요가 없도록 한 점입니다.
사실 위 부분은 저장된 내용을 레지스트리에 쓰고 싶었으나 리눅스에서의 사용을 위해 파일로 저장을 했습니다.

설치환경
- 자바런타임환경을 사용하기 때문에 자바가상머신을 설치하셔야합니다.(http://java.com)

사용방법
1. 사용자 아이디와 사용자키를 입력한다.
  - 처음실행시 아이디와 사용자키를 입력할 수 있도록 창이 뜨며, 그 후에는 메뉴의 환경설정에서 변경할 수 있다.

2. 글등록
  - 글을 입력하고, 아이콘을 설정하고 태그를 입력하고 등록버튼을 누른다.
  - 글은 최대 150자까지만 허용되며, 기타 나머지는 me2day와 동일하다.

3. 댓글 보기 및 등록
  - 마지막으로 등록된 글에 대한 댓글을 볼 수 있다.

다운로드
 - me2java.exe (윈도우)
 - me2java.jar (리눅스) 사용방법 : $ java -jar me2java.jar

'장난감' 카테고리의 다른 글

접속자 리스트 표시 - 쎄지오 웹솔루션  (0) 2009.06.25
구글 날씨 for Java  (0) 2009.05.21
Me2Java ver 0.9 Release!  (0) 2009.04.07
자바 애플릿 채팅  (0) 2009.03.31
사다리 게임  (0) 2009.03.31
메신저에 웹디렉토리 및 자리비움 기능 추가  (0) 2009.03.30
Posted by 에드몽단테스
2009.03.31 01:44

자바 애플릿 채팅 장난감2009.03.31 01:44

애플릿 채팅

이름 : 애플릿 채팅 (자바애플릿 + ajax)
웹서버 : 쎄지오 (아파치 아님)

특징 :
 - 메인프레임을 프레임으로 나누고 히든프레임에 애플릿을 두어 웹페이지가 변경이 되어도 채팅이 끊기지 않음.
 - 쎄지오 메신저와 1:1대화 및 대화방, 로그인등 연동
 - 중국어 지원 (OS의 언어설정이 ’중국어’ 일 경우 중국어로 표시됨)

단점 :
 - 처음 애플릿 로딩시 시간이 좀 걸림
 - UI 가 이쁘지 않음

화면구성 :

 

- 웹접속자는 푸른색계열, 메신저접속자는 노란색계열으로 표시됨
- 히든프레임에서 애플릿이 돌고 있지만 접속자 목록은 서버로부터 ajax로 불러옴.
- 목록이 300명 이상일 경우에는 느려지는 경향이 있음
- 처음에는 히든프에임에 애플릿이 돌고, 사용자 목록도 애플릿으로 구성을 하였으나(즉, 애플릿이 2개 구동됨) 속도때문에 사용자 목록은 ajax로 구현
- 이름 옆에 체크박스를 체크하면 대화신청 및 대화방 초대를 받지않은(대화거절모드)


               [접속자 목록]

 

                                                                    [1:1 대화하기]
- 위의 모습은 웹과 메신저 사용자간의 대화모습이다.
- 메신저의 경우 웹과 달리 상대방의 사진이 보이고, 대화내용갈무리, 파일전송, 쪽지 전송이 가능하다.
- 애플릿의 경우 보완때문에 대화내용갈무리 및 파일전송이 불가능

 

  

                                                           [대화방 목록 및 대화방]


보완점
- ajax로 만든 사용자 목록이 300명정도보다 많을 경우 속도가 현저히 느려짐
- UI 가 이쁘지 않음
  => 접속자를 50,000명정도를 소화할 수 있도록 수정할 예정(조직도 기능 구현)
  => 사용자 목록을 웹에서 보여주는 것이 아니라 웹채팅 UI를 별도로 구성하여 필요한 경우 호출시 UI를 띄우드록 할 예정

'장난감' 카테고리의 다른 글

구글 날씨 for Java  (0) 2009.05.21
Me2Java ver 0.9 Release!  (0) 2009.04.07
자바 애플릿 채팅  (0) 2009.03.31
사다리 게임  (0) 2009.03.31
메신저에 웹디렉토리 및 자리비움 기능 추가  (0) 2009.03.30
HttpCapture  (0) 2009.03.30
Posted by 에드몽단테스
2009.03.31 01:01

사다리 게임 장난감2009.03.31 01:01

회사 처음들어가서 심심풀이로 만들었던 사다리 게임입니다.
VC++를 이용해 만든 것인데, 툴을 배우면서 했던 것이라 참 재미있게 했었습니다.
이런걸 내가 만들었구나 하는 뿌듯함도 있었구요^^;

주 용도는 간식을 먹기 위해 돈을 걷는 것입니다.

사용방법은 간단합니다.
먼저 목표금액을 입력하고 사다리수(사람수)를 입력하고 꽝수(?)를 입력합니다.
그리고 각 번호에 사람이름을 적습니다.
사다리 밑에 숫자는 해당금액입니다. (1은 천원, 0은 0원 4는 4천원)
비율이 너무 차이가 크다 싶으면 새사다리만들기 버튼을 누르면 새롭게 갱신됩니다.
좋은 거 나올때까지 버튼을 계속 누르면 됩니다.

그리고 게임 시작하기 를 누르면 O.K

다운로드 : sadari.exe


 

'장난감' 카테고리의 다른 글

Me2Java ver 0.9 Release!  (0) 2009.04.07
자바 애플릿 채팅  (0) 2009.03.31
사다리 게임  (0) 2009.03.31
메신저에 웹디렉토리 및 자리비움 기능 추가  (0) 2009.03.30
HttpCapture  (0) 2009.03.30
enDictionary  (0) 2009.03.30
Posted by 에드몽단테스

쎄지오 메신저에 웹디렉토리를 추가하였습니다.

Ajax 를 이용하여 웹상의 파일관리를 쉽게할 수 있고 업로드 및 다운로드가 간편해졌습니다.

 

 

그리고 드디어 ’자리비움’ 기능을 넣었습니다.

리눅스 또는 윈도우에서 키보드 및 마우스 이벤트를 후킹하지 못해 JNI를 계속 살펴보고 있었는데,

마우스 이벤트의 움직임만으로 JNI를 쓰지 않고 Java Core로 그냥 해결했습니다.

마우스 이벤트만 감지하므로 키보드만 열심히 눌러도 시간이 지나면 자동으로 상태가 변하게 되네요.

기본값은 10분으로 설정되어 있습니다.


'장난감' 카테고리의 다른 글

HttpCapture  (0) 2009.03.30
enDictionary  (0) 2009.03.30
메신저에 웹디렉토리 및 자리비움 기능 추가  (0) 2009.03.30
HttpCapture  (0) 2009.03.30
enDictionary  (0) 2009.03.30
Google Calendar 1.0 for JAVA  (3) 2009.03.30
Posted by 에드몽단테스