codecamp

Spring DATA Neo4J - 简介

Spring是开源框架,很容易开发基于企业Java的应用程序。 它用Java语言编写。

Spring Framework提供了以下模块来处理基于Java的应用程序的DAO层

  • Spring JDBC

  • Spring ORM

  • Spring DATA

如果我们观察任何基于Java的n层应用程序,我们通常会找到以下层。


层应用程序

这里DAO(数据访问对象)层负责实现数据库操作。

我们需要为每个实体(Say one Database Table)实现两套工件。


例如:-

如果我们在我们的数据库中有一个PROFILE表,那么我们需要提供一个Profile Entity类(POJO)。 然后我们需要提供一个DAO接口和一个DAO实现类。


这里我们需要选择Spring JDBC或Spring ORM来实现这些工件。


Profile Entity类

以同样的方式,我们需要为每个实体提供两个工件。如果我们的项目规模增加,它也增加了在DAO层中创建和维护更多的工件。

Spring JDBC / Spring ORM模块的缺点:

  • 大量的boiler plate代码来执行简单的数据库操作

  • 增加了大量DAO层工件的维护

  • 增加实现大量DAO图构件的开发时间


为什么我们需要Spring DATA模块?

要解决所有上述问题,我们需要使用Spring DATA模块。


Spring数据模块的优点:

  • 消除DAO层中的boiler plate代码

  • DAO层中的工件少

  • 易于开发和维护

  • 改进开发过程


Spring数据模块功能:

  • 支持基于XML的实体映射

  • 支持基于注释的实体映射

  • 支持分页

  • 支持事务

  • 更少的DAO层工件 - 实现存储库

Spring DATA Neo4j模块具有与上述相同的优点和特点。


Spring DATA Neo4j模块的附加功能:

  • 支持Neo4j属性图模块

  • 支持Neo4j Lucence索引

  • 支持Neo4j CQL

  • Neo4jTemplate


Neo4j Cypher - API示例
Spring DATA Neo4j - 结构
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

Neo4j 更多内容

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }