By Aileen Agricola | February 1, 2012
Good Relationships, a practical guide for developing enterprise applications with Spring Data Neo4j, the best NOSQL database for Spring. With Spring Data, the ever-popular Spring Framework has cultivated a new patch of ground, bringing Big Data and NOSQL technologies like Neo4j to enterprise developers. This guide introduces readers to Spring Data Neo4j, built upon the fast, powerful and scalable graph database Neo4j, and demonstrates how to harness the power of relationships within data.
Written by project lead, Michael Hunger, the book provides all the practical details needed for developing enterprise applications with Spring Data Neo4j. Good Relationships, the Spring Data Neo4j Guide Book, is available now for download from InfoQ. The book starts with a narrative tutorial about implementing Cineasts.net, a full social Web app for movie enthusiasts. From inspiration to complete application, Hunger follows the normal progression of application development, introducing Neo4j concepts coupled with new application features. This section features a tutorial that describes the creation of a Web application for movie enthusiasts to find their favorite movies, rate them, connect with fellow movie geeks, and enjoy social features such as recommendations. The result is a powerful demonstration of the possibilities enabled by Spring Data Neo4j.
The second part of the book is classic reference documentation, containing detailed information about the library. It discusses the programming model, the underlying assumptions and internals, as well as the APIs for the object-graph mapping. The reference documentation is typically used to look up concrete bits of information, or to drill down into certain topics. For hackers who want to delve into Spring Data Neo4j, the guide can be read cover-to-cover.
SpringSource Framework and Spring Data Neo4jA division of VMware (NYSE:VMW), the SpringSource framework revolutionized how developers wrote enterprise Java applications, and today it is used by millions of enterprise developers. Graph databases also stand out in the NOSQL space when it comes to enterprise adoption. Graph databases can be used in many diverse areas such as network management, fraud detection, cloud management, social networks, geo and location services, master data management, bioinformatics, configuration databases and much more. Spring Data Neo4j enables POJO based development for the graph database Neo4j. It maps annotated entity classes to the Neo4j graph database with advanced mapping functionality. The template programming model is equivalent to well known Spring templates and builds the basis for interaction with the graph and is also used for the advanced repository support. Spring Data Neo4j is part of the Spring Data project that aims to provide convenient support for NOSQL databases.
‘This project is in a very important space. We are in an era of transition. A very few years ago, a relational database was a given for storing nearly all the data in nearly all applications. While relational databases remain important, new application requirements and massive data proliferation have prompted a richer choice of data stores. Graph databases are emerging as one of the most important categories, and Neo4j—the leading graph database—has proven its value in many applications. It’s a choice you should add to your toolbox.” –Rod Johnson, Founder, Spring and SVP, Application Platform, VMware “Spring developers deserve access to the best tools available to solve their problem. Sometimes that’sa relational database accessed through JPA. But more often than not, a graph database like Neo4j isthe perfect fit for your project. I hope that Spring Data Neo4j will provide unprecedented access tothe power and flexibility of graph databases while retaining the familiar productivity and convenienceof the Spring framework. Enjoy the Spring Data Neo4j guide book and welcome to the wonderfulworld of graph databases!”–Emil Eifrem, CEO of Neo Technology
About the authorMichael Hunger has been passionate about software development for a long time. He is particularlyinterested in the people who develop software, software craftsmanship, programming languages andimproving code. For the last two years he has been working with Neo Technology on the Neo4j graph database. Asthe project lead of Spring Data Neo4j he helped in developing the idea to become a convenient andcomplete solution for object graph mapping. He is also leading Neo4j’s cloud hosting efforts. Good relationships are everywhere in Michael’s life. His “real” life concerns are his family and children,running his coffee shop and co-working-space “die-buchbar” living in the depths of a text-based multi-user dungeon, tinkering with and without Lego® and much more.As a developer he loves to work with many aspects of programming languages, learning new things every day, participating in exciting and ambitious Open Source projects and contributing to different programming related books. Michael is also an active editor and interviewer at InfoQ.