피드버너에 가입하면 원하는 피드를 배치해서 통합적으로 관리할 수 있습니다. 많은 분이 한RSS을 이용해서 블로그를 구독하고 있지만, 피드버너는 기본적으로 한RSS를 제공하지 않습니다. 그래서 번거롭지만 한RSS를 수동으로 추가할 수 밖에 없습니다.

RSS 통합관리 피드버너   →  http://pangsan.tistory.com/121

 한RSS 구독 버튼 추가 방법
 


많은 외국 피드를 제공하지만, 우리나라에서 많이 사용하는 한RSS 는 수동으로 추가해줘야 합니다.
Optimize → BrowserFriendly → More subscription options 클릭한다.


Flare Unit URL 입력창에 아래 주소를 넣고, Add ↑ 버튼을 클릭

http://static.hanrss.com/downloads/feedburner.xml

한RSS 버튼이 목록에 표시되면 체크한 후, 하단의 [Save] 버튼을 클릭

 피드카운트 설정하기
 


1.  Publicize → 2 FeedCount 클릭합니다.
3. 피드 카운트 색상을 선택합니다.
4. 피드 카운트를 활성화 시킵니다.
피드 카운트를 활성화 시켜면 해당 HTML 소스가 생성됩니다. HTML 소스를 복사해서 블로그의 원하는 위치에 삽입하면 자신의 블로그의 RSS 구독자 수를 확인할 수 있습니다.

야이노마

» Contact Me: yainoma00@gmail.com





 피드버너란?  

1. RSS 구독자 통계를 쉽게 확인할 수 있다.
     
RSS를 활용해서 블로그의 글을 읽는 사람이 많습니다. 그런데 자신의 블로그에 몇명의 RSS 구독자를 확인하는 방법이 어렵습니다. 한RSS의 경우는 RSS 구독자 수 위젯을 제공하고 있지만, RSS 구독기는 많기 때문에 정확한 RSS 구독자 수를 확인하는 것은 불가능 합니다. 이런 불편함을 피드버너를 사용하면 비교적 정확한 RSS 구독자 현황을 파악할 수 있습니다.

2. 도메인 변경이 자유롭다.
     
블로그를 만들면 블로그 주소와 RSS 주소가 생성됩니다.
블로그 주소  ☞  http://pangsan.tistory.com
RSS 주소  ☞  http://pangsan.tistory.com/rss

그런데 2차 도메인으로 확장을 하게 되면 RSS 주소가 새로 생성하게 되어 기존의 RSS주소로는 접근이 불가능하게 됩니다. 그래서 RSS 구독자의 손실을 가져오지만 피드버너를 이용하면 도메인을 바꾸어도 RSS 주소는 변경되지 않습니다.
피드버너 RSS 주소 
  http://feeds2.feedburner.com/pangsan

3. 이메일 구독이 가능하다.
     
이메일 구독을 원하시면 신청하세요!
많은 블로그를 방문하다 보면 저런 문구를 보셨을 것 입니다. RSS 는 블로그에 직접 접속하지 않고 블로그의 글을 읽을 수 있다는 장점이 있습니다. 그런데 RSS에 대해서 모르는 분, RSS가 불편한 분에게 편의를 제공하기 위해 블로그 글을 이메일로 발송하는 서비스입니다.

 피드버너 가입하기
 

피드버너 사이트 접속
   ☞   http://www.feedburner.com/fb/a/home



구글이 피드버너를 인수했기 때문에 구글 아이디로 피드버너를 사용할 수 있습니다.
기존 피드버너의 유로 서비스를 구글이 인수하면서 무료로 사용할 수 있게 되는 장점도 있습니다.





자신의 블로그 주소를 입력하는 부분입니다. 블로그의 도메인을 2차, 3차 ... 늘릴때 마다 블로그의 RSS 주소가 바뀌어서 RSS 구독자 수의 유출을 방지하는 부분이기도 합니다. 도메인이 바뀌면 바뀌 도메인으로 바꿔주시면 됩니다.


Feed Title : 기본적으로 블로그 타이틀이 자동으로 입력되어 집니다. 만약 피드를 여러개 등록해서 사용할 경우 쉽게 해당 피드의 블로그를 식별하기 위해 블로그명을 입력하는 것을 추천합니다.

Feed Address : 등록할 피드의 고유 주소를 입력하는 부분으로 자신의 블로그를 알기 쉽게 입력하는 것이 좋습니다. 티스토리의 경우 티스토리 앞의 블로그 명을 입력하는 방법도 좋습니다.
중복되는 Feed Address가 없을 경우 다음으로 넘어갈 수 있습니다.


앞에서 입력한 Feed Address 를 포함한 피드주소가 표시되고, 피드가 생성된 것을 축하한다는 메시지가 나옵니다.
 

마지막 체크부분은 복합적인 업그레이드 버전으로 마지막 부분을 체크해도 되고 안해도 됩니다.
모든 피드를 한곳에 모아서 관리를 할 수 있게 되었습니다.

피드버너에 한RSS 추가  ☞   http://pangsan.tistory.com/122

야이노마

» Contact Me: yainoma00@gmail.com





자바로 만든 프로젝트를 실행파일(exe)로 만들때 사용하는 소프트웨어가 JSmooth 입니다. 실행파일로 만들어 주는 소프트웨어는 JSmooth 뿐만 아니라 다양합니다.

 자바 실행 파일 만드는 방법
 


1. JAR 파일 만들기
     

자바 실행파일을 만들기 위해서는 먼저 JAR 파일을 만들어야 합니다. JAR 파일을 만들고 나서 JAR 파일을 exe 파일로 만들 수 있습니다.

JAR 파일 만드는 방법   ☞   이클립스 JAR 생성과 실행

JAR 파일을 더블클릭해서 프로그램을 실행할 수 있지만, JRE(자바런타임) 환경이 구축되어 있지 않다면 실행이 되지 않는다는 단점이 있습니다. 그래서 JAR 파일을 EXE 파일로 바꾸는 작업이 필요합니다. GUI 프로그램의 경우 JAR 파일 생성후 JAR 파일을 윈도우 실행 파일 EXE 파일로 Wrapping 하는 단계를 거처야 합니다.

2. exe 파일 만들기
     

JSmooth 사이트로 이동하여 JSmooth을 다운로드하여 설치하고, JSmooth 을 실행합니다.


Skeleton(1) 을 선택하고 Skeleton Selection(2) 목록에서 실행이 되는 프로그램을 선택합니다.
Console Wrapper  :  콘솔 프로그램
Windowed Wrapper  :  GUI 프로그램( Swing, SWT, AWT 등 )


Executable(1) 을 선택하고 실행파일에 대한 정보를 입력합니다.
Executable Binary(2) 은 생성할 실행파일 저장위치와 실행파일명을 입력합니다.
Executable Icon(3) 은 생성할 실행파일의 아이콘으로 원하는 이미지를 선택하면 됩니다.
Current Directory 은 설정 안하셔도 됩니다. 


Application(1) 을 선택하여 JAR 파일의 설정을 합니다.
Embedded jar(2) 는 EXE 파일로 만들기 위해 필요한 JAR 파일을 지정합니다. (JAR → EXE)
Main class(3) 은 JAR 파일의 메인 클레스를 지정해 주어야합니다. JAR 파일안에 여러개의 클래스가 존재하여 메인클래스를 지정해주지 않으면 에러가 발생합니다.


JVM Selection(1) 선택하고 JVM 정보를 입력합니다.
Minimum JVM version(2) 은 자신이 사용한 JVM 버전을 설정해 줍니다. 이 프로그램을 실행하기 위한 최소의 JVM 버전입니다.
JVM Search Sequence 목록은 자바 가상머신을 찾는 순서를 정하는 것입니다. Windows Registry 부터 Windows JView 까지 순서대로 찾습니다.


JVM Config(1) 는 라이브러리를 추가해서 사용할때 설정하는 부분(3) 과 JVM 이 사용할 메모리 크기를 설정(2) 하는 부분입니다.  필요하실때만 설정하여 사용하면 됩니다.


이제 실행파일 만들기 위한 설정이 끝났습니다. JSmooth 상단의 아이콘에서 톱니바퀴 모양의 아이콘을 클릭해서 실행파일로 만들 수 있습니다. Project → Compile 으로 하셔도 됩니다.


Compile 을 하시면 JSmooth 에서 설정한 정보를 저장하고 왼쪽의 그림처럼 EXE 파일이 생성됩니다.

지정한 위치로 이동하시면 EXE 파일이 생성되는 것을 확인할 수 있을 것입니다.

야이노마

» Contact Me: yainoma00@gmail.com






제 블로그에 설정되어있는 추천 위젯 + 카테고리 더 보기를 합친 모습입니다. MissFlash 님의 블로그에서 [팁] 티스토리에서 믹시&블로거뉴스 추천 위젯, 카테고리 글 더보기 위치 설정하기!!!   의 포스팅을 보고 응용해서 만든 추천 위젯 + 카테고리 글 더보기 입니다. 소스 코드를 물어보는 블로거님들이 몇분 계서서 직접 포스팅하게 되었습니다.

 차려진 밥상에 숟가락 올리기
 

MissFlash  님의 포스팅을 보고 제대로 동작한다면 이제 응용만 하면 됩니다. 테이블을 만들어 행과 열을 구성하고 그안에 해당된 소스 코드만 삽입하면 작업이 완료됩니다.
만약 테이블을 만들지 않고 추천 위젯과 카테고리 글 더보기 를 배치할 경우 생각했던 위치에 만들어지지 않고 엉망진창이 되어서 테이블 안에 소스 코드를 삽입하는 방법을 사용했습니다.
테이블 하나를 이용해서 만들 수도 있지만, 저는 테이블 2개를 이용해서 UI 를 구성하였습니다.

1. 바깥 테이블 구성하기
     


FIELDSET STYLE 을 이용한 테두리 만들기

<fieldset style="border:3px solid #a1b0db;text-align:center;width:99%;height:260px;padding:0;margin:0 auto;position:relative;">
<legend align=center style="margin:0 0 0 10px;padding:0 3px; border:1px;color:#3A5FCD">포스팅이 유익하셨다면 추천해 주세요!</legend></fieldset>


border : 테두리의 두께

width : 가로
height : 높이

포스팅이 유익하셨다면 추천해 주세요!

좀더 세련된 테이블 구성을 위해 fieldset style, legend 을 이용해서 바깥 테두리에 해당 문구를 삽입 하였습니다.

2. 안 테이블 구성하기
     

TABLE 을 이용한 테이블 만들기1

<table width="98%" height="70%"  valign="bottom" border="1" cellpadding="0" >
    <tr>
         <td align=center width=80%>  카테고리 글 더보기 플로그인 삽입부분</td>
         <td align=center> 믹시 & 다음뷰 추천 위젯 삽입 부분</td>
    </tr>
</table>

border="0" 으로 할 경우 테이블 테두리가 나오지 않습니다.


카테고리 글 더보기 플로그인 삽입부분 믹시 & 다음뷰 추천 위젯 삽입 부분

TABLE 을 이용한 테이블 만들기2

<table width="98%" height="70%"  valign="bottom" border="1" cellpadding="0" >
    <tr>
         <td align=center width=80% rowspan=2>  카테고리 글 더보기 플로그인 삽입부분</td>
         <td align=center > 믹시 추천 위젯 삽입 부분</td>
    </tr>
         <td align=center >다음뷰 추천 위젯 삽입 부분</td>
    </tr>
</table>

rowspan=2 : 열을 2개 합칩니다.

카테고리 글 더보기 플로그인 삽입부분 믹시 추천 위젯 삽입 부분
다음뷰 추천 위젯 삽입 부분

TABLE 을 이용한 테이블 만들기3

<table width="98%" height="70%"  valign="bottom" border="1" cellpadding="0" >
    <tr>
         <td align=center width=80% rowspan=2>  카테고리 글 더보기 플로그인 삽입부분</td>
         <td align=center > 믹시 추천 위젯 삽입 부분</td>
    </tr>
         <td align=center >다음뷰 추천 위젯 삽입 부분</td>
    </tr>
    </tr>
         <td align=center colspan=2>추천 엠블럼 삽입부분</td>
    </tr>
</table>

colspan=2 : 행을 2개 합칩니다.

카테고리 글 더보기 플로그인 삽입부분 믹시 추천 위젯 삽입 부분
다음뷰 추천 위젯 삽입 부분
추천 엠블럼 삽입부분

테이블 만들기1테이블 만들기2 는 차이가 있는 것처럼 보이지만 테두리를 안보이게 하면 2개 모두 똑같은 모습을 보입니다. 그래서 저는 테이블 만들기1로 구성하였고, 믹시 & 다음뷰 추천 위젯의 공간을 작게 구성하여 위젯의 가로배치를 세로배치처럼 만들었습니다.

제가 만든 UI 에 추천 엠블럼 삽입을 하고 싶은 분은 테이블 만들기3 의 구성으로 추천 엠블럼 삽입부분에 소스크드를 입력하면 됩니다.

 최종 소스 코드
 

<fieldset style="border:3px solid #a1b0db;text-align:center;width:99%;height:260px;padding:0;margin:0 auto;position:relative;">
<legend align=center style="margin:0 0 0 10px;padding:0 3px; border:1px;color:#3A5FCD">포스팅이 유익하셨다면 추천해 주세요!</legend>

<table width="98%" height="70%"  valign="bottom" border="1" cellpadding="0" >
    <tr>
         <td align=center width=80%>
            <!-- 카테고리 글 더보기 플러그인 삽입 start -->
            <div id="MF_Reference" class="another_category another_category_color_gray"></div>
            <script type="text/javascript">
            //<![CDATA[
            // Created by MissFlash(http://blog.missflash.com)
            var MF_Reference = document.getElementById('MF_Reference');
            MF_Reference.setAttribute("id", "MF_Reference" + MissFlash_Div_Num);
            MF_Reference.className = "another_category another_category_color_gray";
            var ref_source = getElementsByClass(MissFlash_Div_Num,"another_category");
            MF_Reference.innerHTML = ref_source;
            MissFlash_Div_Num += 1;
            //]]>
            </script>
            <!-- 카테고리 글 더보기 플러그인 삽입 end -->
             </td>
         <td align=center>
            <!-- 믹시 추천 위젯 삽입 start -->
            <div id="MissFlash_Div">
            <div class="MF_Left_Float" style="height:70px; margin-left:5px;">
                <object classid='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0' width='73' height='79' align='left' style="border-bottom: 1px solid #CFD4DA; border-right: 1px solid #CFD4DA;">
                <param name='allowScriptAccess' value='always'/>
                <param name='movie' value='http://www.mixsh.com/widget/mixup/loader.html?muid=15160&guid=http://pangsan.tistory.com/&rdate=&showhitcnt=1&platform=2'/>
                <param name='quality' value='high'/>
                <param name='wmode' value='window'/>
                <embed src='http://www.mixsh.com/widget/mixup/loader.html?muid=15160&guid=http://pangsan.tistory.com/&rdate=&showhitcnt=1&platform=2' quality='high' wmode='window' width='73' height='79' allowScriptAccess='always' type='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/go/getflashplayer'/>
                </object>
            </div>
            <!-- 믹시 추천 위젯 삽입 end -->

&nbsp;
            <!-- 다음뷰 추천 위젯 삽입 start -->
            <script type="text/javascript">
            //<![CDATA[
            // Created by MissFlash(http://blog.missflash.com)
            var MissFlash_Div = document.getElementById('MissFlash_Div');
            MissFlash_Div.setAttribute("id", "MissFlash_Div" + MissFlash_Div_Num);
            var MF_Recommend_ID = "MF_Recommend" + MissFlash_Div_Num;
            var MF_Recommend_Div = document.createElement('div');
            MF_Recommend_Div.setAttribute("id", MF_Recommend_ID);
            MF_Recommend_Div.className = "MF_Right_Float";
           
            // by chatii - http://chatii.tistory.com/52
            // last updated at 09/03/15
           
            // Modified by MissFlash(http://blog.missflash.com)
            var recombox = document.getElementsByTagName("embed");
            for (var i=0; i<recombox.length; i++) {
                if (recombox[i].getAttribute("src") && recombox[i].getAttribute("src").indexOf("http://api.v.daum.net/static/recombox1.swf") != "-1") {
                    var recomdiv = recombox[i].parentNode;
                    recomdiv.innerHTML = recomdiv.innerHTML.replace("recombox1.swf", "recombox3.swf").replace("400", "67");
                    var param = recomdiv.parentNode.getElementsByTagName("param");
                    for(var j=0; j<param.length; j++) {
                    if (param[j].getAttribute("value").indexOf("mixup") != "-1") {
                        param[j].parentNode.removeAttribute("align");
                            recomdiv.appendChild(param[j].parentNode);
                        }
                    }
                    MF_Recommend_Div.innerHTML = recomdiv.innerHTML;
                    recomdiv.style.display = "none";
                }
            }
            MissFlash_Div.appendChild(MF_Recommend_Div);
            //]]>
            </script>
            </div>
            <!-- 다음뷰 추천 위젯 삽입 end -->

            </td>
    </tr>
</table>
</fieldset>

MissFlash 님의 포스팅에 있는 소스코드를 변경하지 않고, 제가 만든 테이블 안의 해당 위치에 소스코드를 삽입하면 끝입니다. MissFlash 님의 포스팅을 완성해야 이 방법을 사용할 수 있다는 점 거듭 강조합니다.

야이노마

» Contact Me: yainoma00@gmail.com





 JAR 이란?
 


클래스 파일의 효율적인 배포를 위해 여러 클래스 파일들을 하나로 묶어 단일의 파일로 만드는 포멧. 로컬(local)상에서 편리한 관리는 물론 자바(Java) 프로그램 실행 중에 원격지에서 하이퍼텍스트 전송 규약(HTTP) 등을 통해 내려받기(download)되어 바로 사용이 가능하다.            -네이버 용어사전-

 JAR 생성 방법
 

1. 일반 파일
     


Sample1.java, Sample2.java, Sample3.java 클래스 파일을 만들었습니다.


File(1) → Export(2) 선택하면 Export 창이 나옵니다.
JAR File(3) 을 선택하고 Next(4) 클릭한다.


Browse(1) 을 클릭하여 jar 파일을 저장할 장소를 선택하고 Next(2) 을 클릭합니다.


Next 을 클릭한다.


클래스 파일 1개를 jar 파일로 만드는 작업은 FInish 를 클릭하면 되지만 여러개의 클래스 파일을 jar 파일로 만들기 위해서는 Main class 를 지정해줘야 합니다. Main class 를 지정하지 않으면 Sample1,
Sample2, Sample3 의 클래스 파일 중 어느 파일이 Main class 인지 알 수가 없어서 jar 파일 실행시 에러를 발생합니다.

2. 패키지 파일
     


Sample1,
Sample2, Sample3 클래스 파일을 Pack 패키지로 묶어서 jar 파일을 생성하였습니다. 이클립스에서는 일반파일의 jar 파일 생성 방법과 동일합니다.


일반 클래스 파일과 패키지 클래스 파일 을 각각 Sample.jar 과 Sample_pack.jar 로 만들고 jar 파일을 압축을 해제한 후 비교를 했습니다.

1. 클래스 파일 위치가 다르다.
일반 클래스 파일로 만든 jar 파일 안에는 클래스 파일이 바로 존재하지만, 패키지 클래스 파일로 만든 jar 파일 안에는 Pack 디렉토리(패키지) 안에 클래스 파일이 존재합니다.

2. MANIFEST.MF 파일의 Main-Class 가 다르다.
일반 클래스 파일로 만든 jar 파일의 Main-Class 는 클래스명을 사용하지만, 패키지 클래스 파일로 만든 jar 파일의 Main-Class 는 패키지명.클래스명 을 사용합니다.

 JAR 실행 방법
 

Browse 을 클릭하여 Main class 를 선택하고 Finish 를 클릭하면 Sample.jar 파일이 생성됩니다.
jar 파일은 더블클릭으로 실행하거나 java -jar 파일.jar 명령어로 실행시킬 수 있습니다.


JAR 파일을 실행파일(EXE) 파일로 만들기  ☞  http://pangsan.tistory.com/125

야이노마

» Contact Me: yainoma00@gmail.com