흔히 자바책에서 말하길, 자바는 JVM에서 동작하기 때문에 한번 컴파일 하면 모든 OS에서 돌아간다는 것입니다. 


지금 어떤걸 간단히 만들다가 약간의 고민에 빠졌습니다.


예를들어 윈도우에서 파일을 다루면 C:\\data\\file.jpg 이런식으로 File f = new File("C:\\data\\file.jpg");

이런식으로 해야되는데 리눅스에서는 윈도우하는 달리 / 이렇게 간다는 차이점이 있습니다.


그래서 처음에는 System.getProperty("os.name"); 해서 OS 이름을 뽑아내서, 각 OS별로 맞추어야 했는데.

제가 바보였습니다.

File.separator를 사용하면 되는거였습니다. 


쉽게  File f = new File("C:\\data\\file.jpg"); 

이런상황에서는 File f = new File("C:"+File.separator+"data"+File.separator+"file.jpg"); 이러면 되네요


저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

일단, 자료를 저장하기 위해, Class A라는것을 만들었습니다.

자료를 담아야할 그릇이 있어서. 지금 이걸 bytearray로 이용해서 다른쪽 컴터로 보낸다음 거기서 열어봐야되는데.

분명 예전에 배울때, serialize 하고 했던것 같아서 보고 있었는데,  제 생각에는 소스가 길었던걸로 생각했는데, 딱 두줄이네요


자바 내에서도 기본적인 기능이 있지만. 




역시나 구글신

https://stackoverflow.com/questions/2836646/java-serializable-object-to-byte-array


The best way to do it is to use ApacheUtils:

To Serialize:

byte[] data = SerializationUtils.serialize(yourObject);

deserialize:

YourObject yourObject = (YourObject) SerializationUtils.deserialize(byte[] data)

Regards

사랑해요 스택 오버플로 ㅠㅠㅠㅠ 아파치 라이브러리를 이용하면 딱두줄이면 되네요. 필요하신분은 라이브러리를 받으시면 되겠지만 Maven을 이용하시면


                <dependency>

<groupId>org.apache.commons</groupId>

<artifactId>commons-lang3</artifactId>

<version>3.3.2</version>

</dependency>


아래 내용을 입력해주시면 됩니다. 


참고로. 만약 내가 Class A라는 것을 사용해서 사용하는데 이걸 그냥 bytearray로 변환시키면 Cast 오류가 납니다.


반드시, public class A implements Serializable 사용하시려는 클래스에다가 Serializable 을 implements 하하셔서 사용해야합니다. 




저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License


저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

자바 버전이 맞지 않아서 생기는 문제입니다.


예를 들어 오라클 자바 1.7 에서 컴파일 하였는데 실행환경이 1.6일경우 등등





저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

우분투에서 jdk 를 설치하게될경우, openjdk 가 설치가되는데, 이때 oracle jdk를 설치해도, openjdk가 작동할때가 있습니다.  이때 순서 변경 방법


sudo update-alternatives --install "/usr/bin/java" "java" "자신의 java 설치 경로 ex> /usr/local/java/bin/java" 숫자 ex>1


sudo update-alternative --install "/usr/bin/java" "java" "/usr/local/java/bin/java" 1


sudo update-alternatve --config java


There are 3 choices for the alternative java (providing /usr/bin/java).


  Selection    Path                                            Priority   Status

------------------------------------------------------------

  0            /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      auto mode

  1            /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      manual mode

  2            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1051      manual mode

* 3            /usr/local/java                                  1         manual mode


Press enter to keep the current choice[*], or type selection number: 


이런식으로 나오면 3, 선택


여기까지 하면 JAVA에 대한 우선순위 변경 완료, 

javac도 동일한방법으로


sudo update-alternative --install "/usr/bin/javac" "javac" "/usr/local/java/bin/javac" 1 

sudo update-alternative --config javac


java -version

javac -version





저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License



지금 모좀 하는데, 자바 공부할때마다 대학교에서부터 궁금했던건데


학교에서 배운건 싱크로나이즈 동기화 밖에 안배웠습니다.


물론  전역 변수를 선언해버리고서 해결하는 방법이 있습니다.(예전에 과제할때 이 방법을 많이 사용했습니다.)

(근데 이건 이렇게 하는게 아니라고 안좋다고 들었습니다.)


그런데 이렇게 안하고도 공식적인 방법으로 더 할수 있는 방법이 있습니다.


물론 여기에는 소스는 안올려놓고, 두개의 포스트를 추천 드리겠습니다. 


http://javacan.tistory.com/64


파이프를 사용해서 쓰레드간 통신 하는 방법 입니다. 파이프를 처음 사용하시는 분들은 API를 꼭 참고 하시기 바랍니다.

제가 여기서 많이 이상한짓을 많이해서


제가 지금 정확히는 기억안나는데 파이프로 전송할수 있는 범위는 0~255 만약 스트링이면, 캐릭터로 잘라서 전송하던지 해야할것 같습니다.

물론 다른방법도 있을것 같지만 그런부분에 대해서는 지식이 적어서


다른 한방법법은 블록킹큐를 이용하는 방법입니다.


http://devyongsik.tistory.com/430


지금 저도 필요한 작업을 하다가 사용하는 중이라 나중에 제대로 알고 나면 이부분에 대해서 소스를 첨부하던지 해서 보기 편한방법으로 다시 올려보겠습니다. 

저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License




이클립스 파일을 잘못건드려서 제대로 동작 안하는 바람에 이클립스를 다시 받으러 갔더니,


새로운 버전이 올라와있네요.


일딴 , 보이는걸로 보면 일딴 예뻐졌습니다.


파이팅

뿌잉

eclipse-jee-juno-win32.zip.1.torrent


첨부파일은 이클립스 공식에서 제공하는 토렌트 파일입니다.


그리고 티스토리는 마플 스티커를 쓸수 있네요 ㅋㅋㅋ 제점수는

저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
  1. Favicon of http://navisphere.net BlogIcon 룬룬 2012.07.12 01:44 신고

    오 내일 회사가면 바로 업데이트해봐야겠네요. :)
    이클립스는 속도만 빨라지면 참 좋을 것 같은데요..

    • Favicon of http://redeyesofangel.tistory.com BlogIcon Yuika eizt 2012.07.12 21:04 신고

      일단 예뻐지긴 했는데,,

      아직은 인디고가 손에 익어서 저는 juno가 완전히 대세되면 넘어가보렬고요 ㅎㅎ


1. 자바 디자인 패턴 1 – Iterator

 

2. 자바 디자인 패턴 2 – Adapter

 

3. 자바 디자인 패턴 3 - Factory Method

 

4. 자바 디자인 패턴 4 - Template Method

 

5. 자바 디자인 패턴 5 – Singleton

 

6. 자바 디자인 패턴 6 – Strategy

 

7. 자바 디자인 패턴 7 – Composite

 

8. 자바 디자인 패턴 8 – Decorator

 

9. 자바 디자인 패턴 9 - Chain of Responsibility

 

10. 자바 디자인 패턴 10 – Facade

 

11. 자바 디자인 패턴 11 – Observer

 

12. 자바 디자인 패턴 12 – Prototype

 

13. 자바 디자인 패턴 13 – Flyweight

 

14. 자바 디자인 패턴 14 – Builder

 

15. 자바 디자인 패턴 15 – Mediator

 

16. 자바 디자인 패턴 16 – Visitor


출처 : http://iilii.egloos.com

저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

Wind socket below Iceland's Eyjafjoell volcano ash plume. South bound wind push ash cloud toward european skies, on May 08, 2010. Photo by Etienne de Malglaive/ABACAPRESS.COM Photo via Newscom


이번에 Flex하고 Java 연결시키는 작업때문에 하지도 않았던 자바 보느라 플랙스 보느라 정책적인 문제 해결하느라 머리가 완전히 스팀이 올랐다고 해야되나. 물론 여기에 제 프로그래밍 기술적인 부분을 올려놓으면 좋겠지만 완전 난잡한 코드에 거의 다른 분들 소스를 참고한데다가 , 또 완벽히 설명할 자신이 없기에 소스 올려놓는것은 제외하고 블로그 2개를 추천드립니다. 물론 이블로그의 특성상 또다른 저와 같은 고민을 하는 분들을 위해서, 혹은 그리고 나중에 제가 다시 보더라고 힌트를 얻기 위해서요 .

http://mudchobo.tomeii.com 머드초보님의 블로그입니다. 이곳에 머드초보님께서 flex를 클라이언트로 java를 서버로 해서, 만든 소스를 보실수 잇습니다. 제가 생각하기 중점은, 플래스하고 자바에서 소켓을 보내고 받는 과정입니다. 물론 중점이겠지만.

약간 덧붙이자면, 여기서 플랙스쪽에서 자바쪽으로 데이터를 받을때 InputStreamReader을 사용하는데
이것을 찾아보니 이것은 값을 뱉어낼때 형태를 지정해야합니다 int형인지 cha형인지 그러니까 2가지 자료형으로 자료를 내 뱉습니다. 그리고 만약 자료가 없을때는 -1을 리턴합니다.


그런데 약간 구경해보니까 XML로 소켓을 받을때 뒤에 \n이라는것을 붙여줘야 된다고 합니다. 그런데 자바쪽에서 보니까 이녀석이 계속 기다리기 만 하는겁니다.

이걸 int로 찍어봤더니 aaa 보낼경우 int값으로 바꾸면 96 96 96 10 0 이렇게 문장을 끝내더군요.

그리고 보낼때 PrintWriter 를 사용하는데 보낼때 저는 XML이라 \n만 넣엇는데 - 안넘어가더라고요.
다시 확인해봤떠니 \0까지 해줘야 되더라고요,,.
pw.print(result_read+"\n\0"); 대략 이정도로?


그리고 http://ummae.tistory.com/ 곳에가면 정책적인 문제를 해결하실수 있습니다.
그러니까 이 플래쉬라는 게 그냥 로컬에서 테스트할때는 소켓이 왔다 갔다가 잘합니다. 그런데 다른컴퓨터를 이용해서 접속할때는 안됩니다. 이걸 어도비에서 정책적으로 막아놨다고 합니다.

기존에는 플랙스내에서 소스 첨부하는 방법하고 정책서버를 따로 운영하는 방법방법이 있었는데 지금은
업데이트 되면서 정책서버를 따로둬야하는듯 합니다.

이곳에 링크를 따라가시면 어도비쪽에서 파이썬 ,펄로 데몬으로 해서 리눅스 환경에서 사용할수 잇는 정책서버를 만들어 올려놓앗습니다. 제가 찾아보았는데 윈도우 쪽은 없는것 같고 윈도우에서 하시려면 직접 만들으셔야 할것 같습니다.

혹시 저같은 분들을 위해서 약간의 정보를 남겨놉니다. 즐거운 하루되세요 .


저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

'Study > --Java' 카테고리의 다른 글

java sqlite jdbc eclipse build path  (0) 2011.07.14
Java sqlite jdbc  (0) 2011.07.14
[JAVA] atoi, iota  (5) 2011.07.07
Flex 와 Java XMLsocket을 사용하기  (0) 2010.08.19
java.net.BindException: Address already in use  (0) 2010.08.19
이클립스 가릴레오(galileo) 플러그인 지우는 방법  (0) 2009.10.26
JAVA 1.6 한글 api  (2) 2009.10.05
이클립스에서 플러그인을 깔았다 지우러고 하는데, 웹을 검색해보니,, 갈릴레오 버전 내용이 잘 안보여서요;; 가나메는 있는데;;

약간 갈릴레오 넘어오면서 바뀐거는.. 가나메 경우 기억에서 헷갈리는데 업데이트 하는곳에 관리하는곳이 있었는데, 갈릴레오의 경우 약간 다른듯 합니다.

참고로 저는 이클립스를 한글패치를 해서 사용중이라... 도움말 메뉴의 멘 아래 메뉴를 누르면 이클립스 정보가 나오고, 거기서 플러그인
인스톨된 목록을 볼수 있는 버튼이 나옵니다.

저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
어떻게 하다가, 안드로이드 XML 부분을 같이 하게 되었습니다;;

이클립스에 플러그인을 설치해야하는데; http://dl-ssl.google.com/android/eclipse/ 이걸할때 반응이 없을경우, https 로 고쳐보시고 안될경우에는 http://dl-ssl.google.com/android/eclipse/site.xml 으로 해보고서 하세요;;

정보의 출처는 구글 그룹스에서 어느 외국 유저분이 남긴 정보;;(만약 영어를 정확히 해석했다면;;;하하;)
저작자 표시 비영리
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

'Study > XML' 카테고리의 다른 글

이클립스 갈릴레오 외부 프로젝트 불러오기  (0) 2009.07.09
안드로이드!  (4) 2009.07.08
http://dl-ssl.google.com/android/eclipse 이클립스가 못찾을때  (0) 2009.07.08
XML의 구조,,  (0) 2009.04.18
[XML]XLST 이미지 넣기  (0) 2009.04.17
[XML]XLST 문서 만들기  (0) 2009.04.17
eXtensible Markup Language  (4) 2009.04.15
일단 소스코드는..
 
class SumAll
{
        public static void main(String args[])
        {
                int result;

                int n1 = Integer.parseInt(args[0]);
                int n2 = Integer.parseInt(args[1]);
                int n3 = Integer.parseInt(args[2]);

                result = n1+n2+n3;

                System.out.println(result);
        }
}



일단 저거대로 그냥 java로 실행시키면, 아규먼트 값을 안입력해서 생기신걸 볼수 있습니다.
일단 자세히는 모르겠지만.. 배열 범위를 넘어나, 그럴때 생긴 것입니다.

저작자 표시 비영리
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

물론 C를 잘하는건 아니지만, 일단 방학인 이상,, 시간이 많다는 가정하에..자바를 시작했습니다.
예제를 쳤는데. 시작부터 오류가 나버리네요;; 혹시 저런 오류가 나시고 실행이 안되시나요?

그러면.. 100% 입니다..

저같은경우 Test로 쳐야 했는데. test로 했더니 저렇게 나오더군요.

저작자 표시 비영리
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
FreeMind와 같이,, 오픈소프 프로그램입니다. 계속 FreeMind를 사용하다가 이걸로 갈아탔는데;;
이유는 쫌더 화려한 느낌이랄까..

2009/04/10 - [Utility program] - FreeMind 마인드맵 프로그램



다운은 어떻게 받냐고요?? 그냥 가입하고서 받으시면 됩니다. 모 주소를 물어보는것도 아니고 그냥 이메일주소에 암호를 넣는 간단한 가입방법을 통해 가입하신다음 받으시면 됩니다..
http://www.xmind.net/

모랄까.. pro 버전있는데; 어떤게 다른건지는 아직 확인은 못했습니다.. .

어떻게 생겼을까요??



이렇게 생겼답니다.. 아 어디서 본듯한 생김새라.. 만약 프로그래밍 언어 JAVA를 공부하시는 분이라면, 익숙하실겁니다..;;

이클립스를 닮지 않았나요?



참고로 한글화는 되지 않았습니다.. 하지만 워낙간단해서, 사용하시는데 문제는 없습니다. 한글은 보시는데로 안깨지고 잘나와요;; 지금 XML에 대해 정리하고 있던중이라..;





저작자 표시 비영리
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
  1. Favicon of http://solarhalfbreed.tistory.com BlogIcon ludensk 2009.05.31 01:32 신고

    알흠답게 생겼군요. 저는 웹마인드맵을 이용합니다ㅎ
    http://www.mind42.com

  2. Favicon of http://shinlucky.tistory.com BlogIcon shinlucky 2009.05.31 10:47 신고

    오호, 이런것도 있었군요.
    저도 한번 써봐야겠어요

    • Favicon of http://redeyesofangel.tistory.com BlogIcon Yuika eizt 2009.05.31 23:39 신고

      생각 정리할때, 좋아요;;


      휴 이걸로 기말 시험 자료들 정리해보는데;; 아 정리를 해되;; 너무 많이 늘어난다는..

  3. Favicon of http://ddoza.tistory.com BlogIcon 또자쿨쿨 2009.06.01 09:40 신고

    안녕하세요.
    블로그검색 온타운 쥔장입니다.
    막 등록하였습니다.
    cafe.naver.com/ontownnet도 많은 이용부탁드립니다.
    그럼 또 뵙겠습니다~

  4. Favicon of http://joogunking.tistory.com BlogIcon joogunking 2009.08.23 10:16 신고

    이런 것도 있네요. 저는 Mindomo.com를 사용하고 있는데 이것도 한번 사용해 보세요.

    • Favicon of http://redeyesofangel.tistory.com BlogIcon Yuika eizt 2009.08.24 07:14 신고

      마인드맵 프로그램이 정말 많은것같아요..

      그런데,, 마인드맵 프로그램을 은근히 많이 이용하시는것 같아요ㅣ..

      제 블로그 유입검색어중 하나가 마인드맵 프로그램이니..ㅎㅎ

      즐거운 하루되세요~

1

+ Recent posts

티스토리 툴바