ما هو الفرق بين GraphDatabaseservice أو Neoservice في Neo4J

StackOverflow https://stackoverflow.com/questions/2190369

  •  25-09-2019
  •  | 
  •  

سؤال

أنا أتعلم استخدام neo4j, ، لكنني مرتبك بعض الشيء على استخدامه. عندما أضيف العقد والعلاقات ، يمكنني أن أفعل ذلك على هذا النحو:

GraphDatabaseService graphDb = new EmbeddedGraphDatabase("C:/temp/graphdb");
Transaction tx = graphDb.beginTx();
try {
  org.neo4j.graphdb.Node node = graphDb.createNode();
  ...

يمكنني أيضًا أن أفعل ذلك مثل هذا:

NeoService neoService = new EmbeddedNeo("C:/temp/graphdb");
Transaction tx = neoService.beginTx();
try {
  org.neo4j.api.core.Node node = neoService.createNode();
  ...

ما هو الفرق هنا حقًا؟ أي واحد يجب أن أستخدم؟ لماذا هم 2 آليات مختلفة؟ هل هذا مجرد تطور API هنا؟ :) أريد استخدام واجهة برمجة تطبيقات metamodel ويحتاج إلى خدمة جديدة ، لذلك أعتقد أن الخيار هناك واضح.

هل كانت مفيدة؟

المحلول

آسف ، يجب عليك استخدام الأول ، لأنه في أحدث 1.0-RC1 تم نقل مساحة الاسم. هذا مجرد تسمية ، والدلالات هي نفسها. المثال الثاني قديم ويجب إزالته من الوثائق الرسمية. أين تجد ذلك؟

هتافات،

/بيتر نيوباور

نصائح أخرى

أنت على الفور مع تعليق API Evolution. واجهة برمجة التطبيقات القديمة هي الخدمات الجديدة ، لذلك يجب ألا تستخدم ذلك. اذهب مع المقتطف الأول. لمزيد من المعلومات حول تغيير واجهة برمجة التطبيقات (API) ، انظر على سبيل المثال ، بريد الإصدار لأحدث RC:

http://www.mail-archive.com/user@lists.neo4j.org/msg02378.html

إذا كنت تستخدم أحدث لقطة (0.7-snapshot) لمكون النماذج الوصفية ، فستجد أنه يستخدم أحدث واجهة برمجة التطبيقات. لإصدارنا 1.0 (يجب أن يكون خارجًا قريبًا الآن :) ، سنقوم بإجراء إصدارات غير Snapshot لجميع المكونات التي ستستخدم واجهة برمجة التطبيقات الجديدة.

-هين

فيما يتعلق بنموذج التعريف ، يرجى استخدام مكون النموذج التعويضي (الآن مع Artifactid Maven: Neo4j-Meta-Model).

لاحظت أيضًا أن نظرة عامة على المكون http://components.neo4j.org/neo4j-meta-model/ لديه بعض رمز وأوصاف مثال غير صالح. سأحاول إصلاح ذلك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top