開發自定義的neo4j存儲過程(procedures)注意事項及說明:
1.調用方式:
在neo4j的web界面(http://localhost:7474/)命令行輸入框內,輸入call your_procedure_name。
其中your_procedure_name格式為:包名+函數名
2.開發的步驟:
新建一個java工程項目,在一個類文件(如GraphDatabaseTest類)中寫要實現的neo4j數據庫操作函數,函數名(如test)上一行應該加上@Procedure注釋,表明該函數是一個neo4j的存儲過程。
測試通過后,就可以開始部署。注意,GraphDatabaseTest類中的變量和存儲過程函數必須是public,且不是final才可以,否則待會重新啟動時會報錯。
測試時,neo4j的服務器程序應處於啟動運行狀態。
3.部署。
3.1 關閉neo4j服務,
3.2 把第2部開發好的項目文件(主要是包含了存儲過程函數的java文件,即GraphDatabaseTest.java),通過eclipse導出或其他方式,生成一個jar文件
3.3 把生成的jar文件放入到neo4j安裝目錄的plugins子目錄下。需要特別注意的是,GraphDatabaseTest.java中如果包含import xxx,則xxx所屬的jar包也必須放入到plugins子目錄內。
3.4 啟用定義的存儲過程:修改neo4j\conf\neo4j.conf配置文件,把其中的dbms.security.procedures.unrestricted=my.extensions.example,my.procedures.*這一行取消注釋(刪除前面的#號)
並在等號后面加上自己剛開發好的存儲過程名,多個存儲過程用英文逗號隔開(為了避免出錯,也可以寫錯your_packagename.*形式,表示該包所包含的所有存儲過程都啟用)
3.5 在cmd內輸入cd neo4j\bin,回車,再輸入neo4j console重新啟動neo4j服務。然后再到localhost:7474的web界面輸入call package_name.your_procedure_name即可。