Spring Data框架详细介绍

什么是Spring Data ?

Spring Data 是持久层通用解决方案,支持 关系型数据库 Oracle、MySQL、非关系型数据库NoSQL、Map-Reduce 框架、云基础数据服务 、搜索服务

如果觉得文章不错,对你有帮助,请作者喝杯咖啡,谢谢!如果对您有帮助 ,请多多支持.多少都是您的心意与支持,一分也是爱,再次感谢!!!打开支付宝首页搜“556723462”领红包,领到大红包的小伙伴赶紧使用哦!感谢大家的支持!您的支持,我会继续分享更多的文章,欢迎关注!

Spring Data框架详细介绍_第1张图片

Spring Data 就是 Spring 官方提供一套 数据层 综合解决方案 !

为什么要使用Spring Data?

Spring Data JPA 框架,主要针对的就是 Spring 唯一没有简化到的业务逻辑代码,至此,开发者连仅剩的实现持久层业务逻辑的工作都省了,唯一要做的,就只是声明持久层的接口,其他都交给 Spring Data JPA 来帮你完成!

如何去使用Spring Data?

1.下载需要的包。

需要先 下载Spring Data JPA 的发布包(需要同时下载 Spring Data Commons 和 Spring Data JPA 两个发布包,Commons 是 Spring Data 的公共基础包),并把相关的依赖 JAR 文件加入到 CLASSPATH 中。

2.让持久层接口 Dao(以UserDao)  继承 Repository 接口

该接口使用了泛型,需要为其提供两个类型:第一个为该接口处理的域对象类型,第二个为该域对象的主键类型。 如下:

Spring Data JPA 风格的持久层接口:

public interface UserDao extends Repository {

    public AccountInfo save(AccountInfo accountInfo);

 }

不需要UserDao的实现类,框架会为我们完成业务逻辑。

3.在 Spring 配置文件中启用扫描并自动创建代理的功能。

 <-- 需要在 > 标签中增加对 jpa 命名空间的引用 -->

 <jpa:repositories base-package="footmark.springdata.jpa.dao"

 entity-manager-factory-ref="entityManagerFactory" 

 transaction-manager-ref="transactionManager"/> 

4.测试代码。

 

 public interface UserDao extends Repository {

 

 public AccountInfo save(AccountInfo accountInfo);

 

 // 你需要做的,仅仅是新增如下一行方法声明

 public AccountInfo findByAccountId(Long accountId);

 }

 

5.总结

使用 Spring Data JPA 进行持久层开发大致需要的三个步骤:

1.声明持久层的接口,该接口继承 Repository,Repository 是一个标记型接口,它不包含任何方法,当然如果有需要,Spring Data 也提供了若干 Repository 子接口,其中定义了一些常用的增删改查,以及分页相关的方法。

2.在接口中声明需要的业务方法。Spring Data 将根据给定的策略来为其生成实现代码。

3.在 Spring 配置文件中增加一行声明,让 Spring 为声明的接口创建代理对象。配置了 后,Spring 初始化容器时将会扫描 base-package 指定的包目录及其子目录,为继承 Repository 或其子接口的接口创建代理对象,并将代理对象注册为 Spring Bean,业务层便可以通过 Spring 自动封装的特性来直接使用该对象。

你可能感兴趣的:(Spring,Data)