반응형

1. 동적배열 

  - 크기확장, 숫자 문자열 혼합 : perlish array 

자바의 배열은 정적이다. 미리 크기가 정해져 사용하기 때문에 나중에 요소를 추가 할 수 없다. 만약 추가를 시도 하면 

Exception in thread "main" java.lang.ArrayIndexOutOfBounndsException : 에러가 난다.

여기에 펄(perl) 배열이라는 것이 있다. 실시간으로 늘어 나는 배열로 편리 하다.

펄의 배열은 크기 제한이 없고, 문자열과 숫자를 한꺼번에 넣를 수도 있다. 

배열이라기 보단 리스트 개념이 보이는 배열이다.

http://mwultong.blogspot.com/2006/09/java-perlish-array.html 에 있는 

소스 내용을 참고로 사용해 보기로 한다.

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

import java.util.*;

public class Foo {

  public static void main(String args[]) {

    List<Object> oPerlishArray = new ArrayList<Object>();

    // 배열 요소 몇 개 채우기, 문자열 숫자 가리지 않고

    oPerlishArray.add(123);

    oPerlishArray.add("하하하");

    // 이제는 배열 요소 (숫자) 한꺼번에 채우기

    for (int x = 10; x <= 100; x++) oPerlishArray.add(x);

    // 배열 출력

    for (int i = 0; i < oPerlishArray.size(); i++)

      System.out.format("[%d] = %s%n", i, oPerlishArray.get(i));

  }

}

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

oPerlishArray라는 배열에 add() 메소드로 요소들을 마음대로 추가하면, oPerlishArray 배열의 크기가 자동으로 늘어 나게 된다. 추가된 내용은 뒤쪽에 요소들이 추가 된다.

텍스트 파일을 통째로 넣어 처리 할때 편하게 쓸 수 있다.

단, 이런 동적 배열은 속도가 떨어며, 메모리 관리도 비효율적이기에 꼭 필요한 경우에만 사용해야 한다. 물론 텍스트 파일 처리 등에서는 차이를 체감 하기는 힘들것이다.

TIP

배열에 정수만을 넣기 위해서는

List<Integer> oPerlishArray = new ArrayList<Integer>();

문자열만 넣으려면 

List<String> oPerlishArray = new ArrayList<String>();

모든 타입을 가리지 않고 넣으려면 

List<Object> oPerlishArray = new ArrayList<Object>();

이와 같이 선언 하면 된다.


문자열 지정후 정수를 넣으면 다음과 같은 에러가 난다고 한다.

Foo.java:11: cannot find symbol

symbol  : method add(int)
location: interface java.util.List<java.lang.String>
    oPerlishArray.add(123);
                 ^
Foo.java:15: cannot find symbol
symbol  : method add(int)
location: interface java.util.List<java.lang.String>
    for (int x = 10; x <= 100; x++) oPerlishArray.add(x);
                                                 ^
2 errors

만일 타입을 정의 하지 않으면 이런 경고가 나온다.

Note: ***.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

여기 까지....

실행 해 보도록



반응형
반응형

안드로이드(Android) AndroidManifest.xml

안드로이느 어플리케이션에 대한 각종 정보를 기술한 어플리케이션 명세서

1. 안드로이드 매니페스트 파일(AndroidManifest.xml) 개요

모든 안드로이느 어플리케이션은 만드시 AndroidManifest.xml 파일을 자신의 루트 디렉토리에 가지고 있어야 한다.

AndroidManifest.xml는 어플리케이션에 대한 필수적인 정보를 안드로이드 플랫폼에 알려준다.

(1) AndroidManifest.xml에 기술되는 내용

- 안드로이드 어플리케이션을 위한 자바 패키지명 정의

- 이 패키지명은 전체 시스템 상으로 유일해야 한다.

- 안드로이드 어플리케이션을 구성하는 컴포넌트들(Activity, Service, Broadcast Receiver, Content Provider)을 기술해야 한다.

- 어플리케이션을 구성하는 Component들에 대한 해당 클래스명을 정의하고, 그 Component가 처리 할 수 있는 기능이 무어인지 Intent-filter를 정의... 

투피컨티뉴~


반응형
반응형

-bash: ./예제.sh: /bin/sh^M: bad interpreter: No such file or directory


상기와 같이 스크립트 파일 등이 file format 오류로 실행되지 않는 다면 아래와 같이 file 의 format 을 변경하면 된다.


-bash # vi 예제.sh


:set ff=unix 실행


:wq 실행


-bash # ./예제.sh

반응형
반응형

해당 폴더 위치에서 하위 1뎁스 폴더용량 확인

du -h --max-depth=1 

전체 파일시스템 확인 명령어

df -h 

반응형
반응형

이미지는 첨부 하지 않고 가능 하면 텍스트로 설명 할 것이다. 

해당 작업은 jeus 6.0버전 (fix#8)기준이다. 

war 파일을 리디플로이 방법 간략히 정리하면

1. 제우스 admin web console 접속

2. 어플리 케이션 모듈 디플로이에서 파일 업로드

3. 엔진 컨테이너 -> 해당 컨테이너 서비스 -> 어플리케이션 모듈 -> 서비스 선택 

  -> 마우스 우측키 -> [서비스명] 리디플로이 실행 

4. 엔진 컨테이너 재기동 [확인작업]

5. 리디플로이 완료

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

제우스 was를 운영 중이면 admin web console 페이지가 기동중일 것이다.

접속하는 위치는 

http://아이피:포트/webadmin/app이다. (여기서 포트는 9744 가 기본 설정이다.)

ex) htto://localhost:9744/webadmin/app

   로컬 PC에 설정 되어 있을 경우 URL이다.

웹 브라우져로 접속한다.

일반적으로 jeus 설치시나 따료 변경 여부가 없다면 

기본 admin 접속 아이디 / 패스워드 는  administrator / jeusadmin 이다.

로그인 하도록 한다.

[admin web console 페이지 - 로그인하기]

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

로그인 되었으면 페이지 왼쪽에 [jeus 노드 트리]를 확인한다

hostname 명 아래

- 엔진 컨테이너

- JEUS 매니저 리소스

- JEUS 매니저 서비스

- 어플리 케이션 모듈 디플로이

- JEUS 모니터링

과 같이 구성된 것을 확인 할 수 있다.

어플리 케이션 모듈 디플로이 에서 war 파일을 업로드 하면된다.

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

엔진 컨테이너 -> 해당 컨테이너 서비스 -> 어플리케이션 모듈 -> 서비스 선택 

  -> 마우스 우측키 -> [서비스명] 리디플로이 실행 

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

리디플로이 컨테이너 재기동 하면 적용이 완료 된다.


반응형
반응형

윈도우 cmd 창에서

war 파일을 만들고 싶은 위치 폴더로 이동 해서

ex)

server 폴더 이하 모두를 server.war 로 생성 하고자 한다면

c:\server 에 폴더가 위치해 있다고 한다면

c:\에서 server 폴더로 이동해서

jar cf server.war *

실행하면 

c:\server  폴더 이하 내용을 모두 war로 압축하여

server.war 파일을 생성한다. 

c:\server 에 생성된다.


반응형
반응형

리눅스 스레드 설정 총갯수 

설정 총갯수

cat /proc/sys/kernel/threads-max

 리눅스 엔지니어가 아니어서 정확한 방법은 모르겠지만 

다음 스크립트를 사용하면 현재 사용중인 쓰레드 갯수를 알 수 있는 것 같다.

grep -s '^Threads' /proc/[0-9]*/status | awk '{ sum += $2; } END { print sum; }' 

반응형

+ Recent posts