저는 rhino를 사용하여 일부 응용 프로그램을 사용자 정의 할 수있었습니다. 다음은 자바에서 호출되는 자바 스크립트 함수의 예입니다 : 다음은 할 필요가 무엇 이건 반환 된 객체의 값을 얻을 수 있습니다자바 스크립트 객체의 필드 값 받기
function() {
var phone = this.telephoneNumber;
phone = phone.replace(/[^+0-9]/g,"");
if (phone.indexOf("+") == 0) {
phone = "00" + phone.substring(1);
}
if (phone.indexOf("0041") == 0) {
phone = "0" + phone.substring(4);
}
if (phone.indexOf("0") == 0) {
phone = "0" + phone;
}
return {
Name: this.sn + " " + this.givenName,
firstName: this.givenName || "",
lastName: this.sn || "",
phone: phone,
service: "",
info: ""
};
}
자바 응용 프로그램입니다.
rhino가 JVM의 일부이므로 Rhino API 대신 스크립팅 API를 사용하고 싶습니다. 그러나 Java 코드에서 JavaScript 개체의 필드 값을 가져 오는 방법을 찾지 못했습니다.
Rhino는 JVM의 일부가 아닙니다. 그것은 런타임의 일부입니다. Java가 XSLT 용 Xalan의 패치 버전을 사용하는 것과 같습니다. 런타임시 Rhino의 버전을 크게 최적화하지 않고 최적화를 Rhino에 다시 적용하지 않으면 성능이 크게 향상되지 않습니다. 또한 Rhino의 구버전을 사용하고 있습니다. –
@DavidEhrmann 예, 성능 향상을 얻는 것이 아니라 표준 스크립트 엔진 API를 사용하여 다른 스크립트 언어로 전환하는 것이 더 쉽습니다. –