programing

Java에서 컨텍스트는 정확히 무엇입니까?

nasanasas 2020. 8. 22. 08:59
반응형

Java에서 컨텍스트는 정확히 무엇입니까? [복제]


이 질문에 이미 답변이 있습니다.

나는 이것을 구글 검색하고 Java 문서를 읽었지만 약간 혼란 스럽습니다. 누군가 Context평범한 영어로 a 무엇인지 설명해 주 시겠습니까?


조건을 프로그래밍, 그것은 할 수 있습니다 더 큰 주변 부분의 어떤 현재 작업 단위의 행동에 영향을. 예를 들어 사용 된 실행 환경, 환경 변수, 인스턴스 변수, 로컬 변수, 다른 클래스의 상태, 현재 환경의 상태 등.

일부 API에서는 인터페이스 / 클래스 (예 : Servlet ServletContext, JSF FacesContext, Spring ApplicationContext, Android Context, JNDI InitialContext등) 에서이 이름을 볼 수 있습니다 . 이들은 모두 최종 사용자가 알 필요가없는 환경 세부 정보를 추상화하는 Facade Pattern따릅니다. 단일 인터페이스 / 클래스.


컨텍스트는 환경을 나타냅니다. 시스템에서 현재 위치를 둘러싼 상태를 나타냅니다.

예를 들어 Java의 웹 프로그래밍에는 요청과 응답이 있습니다. 이들은 Servlet의 서비스 메소드로 전달됩니다.

Servlet의 속성은 ServletConfig이고 그 안에는 ServletContext가 있습니다.

ServletContext는 Servlet이있는 Container에 대해 Servlet에 알리는 데 사용됩니다.

따라서 ServletContext는 컨테이너 내의 서블릿 환경을 나타냅니다.

마찬가지로 Java EE에는 요소 (예 : 세션 Bean)가 컨테이너 작업을 위해 액세스 할 수있는 EBJContext가 있습니다.

오늘날 Java에서 사용되는 컨텍스트의 두 가지 예입니다.

편집하다 --

Android를 언급합니다.

여기를보세요 : http://developer.android.com/reference/android/content/Context.html

이 컨텍스트가 Android 앱이 배포 된 위치와 사용할 수있는 항목에 대한 모든 종류의 정보를 제공하는 방법을 확인할 수 있습니다.


간단히 말해, Java 컨텍스트는 Java native메소드를 모두 함께 의미 합니다.

다음 Java 코드에서 두 줄의 코드는 컨텍스트를 필요 : // (1)// (2)

import java.io.*;

public class Runner{
    public static void main(String[] args) throws IOException { // (1)           
        File file = new File("D:/text.txt");
        String text = "";
        BufferedReader reader = new BufferedReader(new FileReader(file));
        String line;
        while ((line = reader.readLine()) != null){ // (2)
            text += line;
        }
        System.out.println(text);
    }
}

(1) 자바 네이티브 메서드에 의해 호출 되기 때문에 컨텍스트 필요합니다. private native void java.lang.Thread.start0();

(2) 자바 네이티브 메서드를 호출reader.readLine() 하기 때문에 컨텍스트가 필요 합니다. public static native void java.lang.System.arraycopy(Object src, int srcPos, Object dest, int destPos, int length);

추신.

그것이 BalusC가 패턴 Facade에 대해 더 엄격하게 말하는 것입니다.


단어를 대문자로 입력 했으므로 인터페이스를 참조하고 있다고 가정합니다 javax.naming.Context. 몇 개의 클래스가이 인터페이스를 구현하고 가장 간단한 설명에서 (일반적으로) 이름 / 객체 쌍의 집합입니다.

참고 URL : https://stackoverflow.com/questions/3918083/what-exactly-is-a-context-in-java

반응형