官术网_书友最值得收藏!

Persistence with Spring Data and Reactive Fashion

In the previous chapter, we created our Content Management System (CMS) application. We also introduced REST (Representational State Transfer) support in Spring, which enabled us to develop a simple web application. Also, we learned how dependency injection works in the Spring Framework, which is probably the most famous feature of the framework.

In this chapter, we will add more features to our application. Systems in the real world need to persist their data on a real database; this is an essential characteristic for a production-ready application. Also, based on our model, we need to choose the correct data structure to achieve performance and avoid the impedance mismatch.

In the first part of this chapter, we will use the traditional SQL database as a store for our application. We will deep dive on the Spring Data JPA (Java Persistence API) to achieve the persistence for our CMS application. We will understand how to enable transactions with this amazing Spring module.

After that, we will change to a more modern type of database called NoSQL technologies. In this field, we will use the famous database document model called MongoDB and then we will create the final solution for our CMS application.

MongoDB offers a fantastic solution for our application because it has support for a document storage model and enables us to store our objects in the form of JSON, which makes our data more readable. Also, MongoDB is schema-less, which is a fantastic feature because one collection can store different documents. It means records can have different fields, content, and sizes. The other important characteristic from MongoDB is the query model. It offers a document-based query that is easy to understand, and, based on JSON notations, our queries will be more readable than any other database can be.

Finally, we will add the most important feature present in Spring 5.0: support for Reactive Streams. Our application will be transformed into a modern web application which has some important requirements.

Here's an overview of what you will learn in this chapter:

  • Implementing the Spring Data JPA
  • Creating repositories with Spring Data Reactive MongoDB
  • Learning the Reactive Spring
  • Understand the Project Reactor
主站蜘蛛池模板: 随州市| 稻城县| 平遥县| 勐海县| 岗巴县| 通山县| 泽普县| 南江县| 乐陵市| 克拉玛依市| 奉新县| 杭州市| 文安县| 古蔺县| 武山县| 水富县| 林口县| 竹山县| 揭阳市| 阳春市| 兴文县| 台前县| 兴义市| 交口县| 竹溪县| 襄城县| 广丰县| 深泽县| 黄骅市| 铜山县| 四子王旗| 宁化县| 辽宁省| 法库县| 巫山县| 无棣县| 拜城县| 措美县| 咸宁市| 清原| 广东省|