API'lerin çok farklı olduğunu biliyorum, ancak yerleşik JavaScript içerikleri ile Mozilla'dan elde edilebilen Rhino yapıları arasında herhangi bir işlevsel fark var mı?Java 6'nın Rhino'nun yerleşik sürümü ile Mozilla'dan doğrudan Rhino paketi arasındaki fark nedir?
cevap
API'lardan ne kastettiğinizin farklı olduğundan emin değilim. Java 6'da mevcut motorlardan birinin "js" ile gösterilen Rhino olduğu bir komut dosyası motoru vardır. Dolayısıyla, paketlenmiş Mozilla Rhino ECMAScript ile web sitelerinden alabileceğiniz tek fark, sürümler arasındaki farklar olacaktır. Mozilla Rhino ECMAScript'in paket versiyonunun 1.6 rev2 olduğuna inanıyorum.
Bu, XML kitaplıklarının çalışma şekline benzer. Varsayılan bir uygulamaya sahip bir "motor" var.
Örnek İstemci Kullanımı
==========
| Client |
==========
|
===============================
| |
========================= =============
| Java Scripting Engine | | Rhino API |
========================= =============
|
==================
| |
============= =============
| Rhino API | | Other API |
============= =============
Güncelleme
Sadece sorunuzu biraz daha cevap, evet Java 6 komut dosyası Motor bağlamlarda ve diğer kurulum işlemleri ilgileniro sen Rhino'yu doğrudan kullanmanız durumunda manuel olarak yapmak zorundasınız. İşte ikisini kullanmanın bir örneği. Java6 Scripting Engine'i kullandığınızda, kapağın altında benzer şeyler olduğunu unutmayın. Burada kullanılan ScriptingEngine, Rhino tarafından desteklenmemelidir. Özel bir komut dosyası uygulaması olabilir.
public class Main {
static class Shell extends ScriptableObject {
@Override
public String getClassName() {
return "global";
}
public static void print(Context cx, Scriptable thisObj, Object[] args, Function funObj) {
for (int i = 0; i < args.length; i++) {
String s = Context.toString(args[i]);
System.out.print(s);
}
}
}
public static void useJava6ScriptingEngine() throws Exception {
ScriptEngineManager mgr = new ScriptEngineManager();
ScriptEngine jsEngine = mgr.getEngineByName("JavaScript");
jsEngine.eval("print('Hello, world!')");
}
public static void useRhinoDirectly() throws Exception {
Context context = Context.enter();
try {
Shell shell = new Shell();
String[] names = {"print"};
shell.defineFunctionProperties(names, Shell.class, ScriptableObject.DONTENUM);
Scriptable scope = context.initStandardObjects(shell);
context.evaluateString(scope, "print('Hello, world!')", null, 0, null);
} finally {
Context.exit();
}
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws Exception {
useJava6ScriptingEngine();
useRhinoDirectly();
}
}
- 1. Java arasındaki fark nedir
- 2. LayoutInflater'ı doğrudan çağırmakla arasındaki fark nedir?
- 3. Sürüm ve .Net'deki 'Çalışma Zamanı Sürümü' arasındaki fark nedir?
- 4. Rhino ve Spidermonkey JavaScript motorları arasındaki fark nedir?
- 5. Java (programlama dili) ve Java (Denetim Masası) arasındaki fark nedir?
- 6. = ile mysql arasındaki fark nedir?
- 7. Referans ile & * arasındaki fark nedir?
- 8. difftime ile '-' arasındaki fark nedir?
- 9. Smalltalk'taki fark ile Smalltalk arasındaki fark nedir?
- 10. Nokogiri'deki .at_css ile .css arasındaki fark nedir?
- 11. handlebar.js ile handlebar.runtime.js arasındaki fark nedir?
- 12. Java ile arayüz ve @interface arasındaki fark nedir?
- 13. Javascript'teki yeni ve doğrudan atama arasındaki fark nedir?
- 14. Fark() arasındaki fark nedir mustache.js
- 15. Bir dll ve nuget paketi arasındaki fark nedir?
- 16. Bir django paketi ve bir python kitaplığı arasındaki fark nedir?
- 17. Bir storyboard ve storyboard paketi arasındaki fark nedir?
- 18. SQL Server Management Studio ve Express sürümü arasındaki fark nedir?
- 19. Web paketi yerleşik varlıkları
- 20. arasındaki fark nedir?
- 21. arasındaki fark nedir?
- 22. arasındaki fark nedir?
- 23. Wordpress: site_id ile blog_id arasındaki fark nedir?
- 24. SSI'da DOCUMENT_URI ile URI_REQUEST arasındaki fark nedir?
- 25. Backbone.Js - el ile $ el arasındaki fark nedir?
- 26. Fmap ile bağlama arasındaki fark nedir?
- 27. Linq: Birleşimdeki == ile eşittir arasındaki fark nedir?
- 28. Proxy ile ilişkilendirme arasındaki fark nedir?
- 29. http_basic_authenticate_with AND authenticate_or_request_with_http_basic ile arasındaki fark nedir?
- 30. 'localhost' ile '127.0.0.1' arasındaki fark nedir?
Ben bahsediyorum API'leri farkı Mozilla Rhino paketi Bağlamlarda ve Kapsamlarının açık uğraşmayı kullanır, ancak olmasıdır ı almanın doğasında ait gördüğüm örneklerden tümünden Java 6'daki uygulamada, bu detaylar arka plana sürüklenmiş gibi görünüyor, bu yüzden onlar hakkında endişelenmenize gerek yok mu? –
@Jeremy Anlatabildiğim kadarıyla bunların kilimin altına süpürüldüğünü düşünmüyorum. Java 6'da ScriptEngine'in nasıl çalıştığını öğrenmeniz gerekecek. Java 6'nın bir Scripting Engine altyapısını tanıttığını söylüyordum. Mozilla Rhino ECMAScript'in bu Scripting Engine'in bir uygulaması var. Bu, Mozilla Rhino ECMAScript'in Java 6 komut dosyası çerçevesi bağlamında oynatıldığı anlamına gelir. İki seçeneğiniz var, Rhino API'yi doğrudan kullanın veya yeni Java 6 Scripting motor API'sini öğrenin. –