자바에서 자바스크립트를 호출하는 방법
웹 애플리케이션을 개발할 때 Java 백엔드 코드에서 JavaScript 코드를 호출해야 하는 경우가 있습니다. 이 경우 Java의 스크립팅 엔진을 사용하여 JavaScript 코드를 실행할 수 있습니다. 이 기사에서는 Java에서 JavaScript를 호출하는 방법을 소개합니다.
- 스크립팅 엔진 라이브러리 소개
Rhino, Nashorn 등 Java에서 사용할 수 있는 스크립팅 엔진이 많이 있습니다. 이 기사에서는 Nashorn을 예로 들어 보겠습니다.
Java에서 Nashorn을 사용하려면 프로젝트에 Nashorn 라이브러리를 도입해야 합니다. Maven을 사용하여 빌드하는 경우 pom.xml에 다음 종속성을 추가하면 됩니다. 다음은 간단한 JavaScript 예입니다.
<dependency> <groupId>org.openjdk.nashorn</groupId> <artifactId>nashorn-core</artifactId> <version>1.8.0_25</version> </dependency>
- 코드는 두 개의 인수를 추가하고 결과를 반환하는 계산이라는 함수를 정의합니다.
스크립트 엔진을 통해 JavaScript 파일 로드, JavaScript 문자열 실행 등 Java에서 JavaScript 코드를 호출하는 방법은 다양합니다. 다음은 몇 가지 샘플 코드입니다:
- 3.1. 스크립트 엔진을 통해 JavaScript 파일 로드
- Java에서는 스크립트 엔진을 통해 JavaScript 파일을 로드하고 그 안에 있는 코드를 실행할 수 있습니다. 다음은 샘플 코드입니다.
var calculate = function(a, b) { return a + b; }
이 코드에서는 먼저 ScriptEngineManager를 사용하여 JavaScript 스크립트 엔진을 만듭니다. 그런 다음 JavaScript 파일을 로드하고 eval 메서드를 호출하여 해당 파일의 코드를 실행합니다. 다음으로 Invocable 객체를 생성하고 해당 InvokeFunction 메서드를 호출하여 JavaScript 함수를 호출합니다. 마지막으로 함수의 결과를 인쇄합니다.
3.2. JavaScript 문자열 실행
파일을 로드하여 JavaScript 코드를 호출하는 것 외에도 JavaScript 문자열을 실행하여 코드를 호출할 수도 있습니다. 다음은 샘플 코드입니다.
ScriptEngineManager manager = new ScriptEngineManager(); ScriptEngine engine = manager.getEngineByName("JavaScript"); engine.eval(new FileReader("path/to/javascript/file.js")); Invocable invocable = (Invocable) engine; Object result = invocable.invokeFunction("calculate", 1, 2); System.out.println(result);
이 코드에서는 계산이라는 함수의 정의가 포함된 JavaScript 문자열이 먼저 정의됩니다. 그런 다음 JavaScript 스크립트 엔진을 만들고 eval 메서드를 호출하여 이 문자열을 실행합니다. 마지막으로 호출Function 메서드를 다시 호출하여 함수를 호출합니다.
요약이 문서에서는 Java에서 JavaScript 코드를 호출하는 방법을 설명합니다. JavaScript 코드는 Java의 Nashorn 스크립팅 엔진을 사용하여 Java 코드에서 쉽게 실행할 수 있습니다. 이 기능을 통해 웹 개발자는 프런트엔드 및 백엔드 로직을 동일한 애플리케이션에 보다 쉽게 통합할 수 있습니다.
위 내용은 자바에서 자바스크립트를 호출하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











이 기사에서는 Data Fetching 및 기능 구성 요소의 DOM 조작과 같은 부작용을 관리하기위한 후크 인 React의 useEffect에 대해 설명합니다. 메모리 누출과 같은 문제를 방지하기 위해 사용법, 일반적인 부작용 및 정리를 설명합니다.

게으른로드는 필요할 때까지 컨텐츠로드를 지연시켜 초기로드 시간과 서버로드를 줄임으로써 웹 성능 및 사용자 경험을 향상시킵니다.

이 기사는 가상 Dom 트리를 비교하여 DOM을 효율적으로 업데이트하는 React의 조정 알고리즘을 설명합니다. 성능 이점, 최적화 기술 및 사용자 경험에 미치는 영향에 대해 설명합니다. 문자 수 : 159

이 기사는 다중 연계 기능을 단일 연계 함수 시퀀스로 변환하는 기술 인 JavaScript의 카레에 대해 논의합니다. Currying의 구현, 부분 응용 프로그램 및 실제 용도와 같은 혜택, 코드 읽기 향상을 탐색합니다.

JavaScript의 고차 기능은 추상화, 공통 패턴 및 최적화 기술을 통해 코드 간접성, 재사용 성, 모듈성 및 성능을 향상시킵니다.

이 기사는 REACT의 USECONTEXT를 설명하며, 이는 PROP 시추를 피함으로써 상태 관리를 단순화합니다. 중앙 집중식 상태 및 성능 개선과 같은 렌더링을 통해 성능 향상과 같은 이점에 대해 논의합니다.

기사는 Connect ()를 사용하여 React 구성 요소를 Redux Store에 연결하고 MapStateToprops, MapDispatchtoprops 및 성능 영향을 설명합니다.

기사에서는 extentdefault () 메서드를 사용하여 이벤트 처리기의 기본 동작 방지, 향상된 사용자 경험과 같은 이점 및 접근성 문제와 같은 잠재적 문제에 대해 논의합니다.
