Spring Data Hazelcast
Welcome to Spring Data Hazelcast project!
The primary goal of the Spring Data project is to make it easier to build Spring-powered applications that use new data access technologies. This module provides integration with Hazelcast.
Examples
For examples on using Spring Data Hazelcast, see dedicated Code Samples: spring-data-hazelcast-chemistry-sample and spring-data-jpa-hazelcast-migration.
Artifacts
Maven
<dependency>
<groupId>com.hazelcast</groupId>
<artifactId>spring-data-hazelcast</artifactId>
<version>${version}</version>
</dependency>
Gradle
dependencies {
compile 'com.hazelcast:spring-data-hazelcast:${version}'
}
Usage
Spring Configuration
@Configuration
@EnableHazelcastRepositories(basePackages={"example.springdata.keyvalue.chemistry"}) // <1>
public class ApplicationConfiguration {
@Bean
HazelcastInstance hazelcastInstance() { // <2>
return Hazelcast.newHazelcastInstance();
// return HazelcastClient.newHazelcastClient();
}
}
- Enables Spring Data magic for Hazelcast. You can specify
basePackages
for component scan. - Instantiates Hazelcast instance (a member or a client)
Repository Definition
public interface SpeakerRepository extends HazelcastRepository<Speaker, Long> {}
Test of Repository
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = AppConfiguration.class)
public class AppTest {
@Autowired
SpeakerRepository speakerRepository;
@Test
public void testStart(){
speakerRepository.findAll();
}
}
@Query Support
Sample @Query Usages
Query with hardcoded value
@Query("firstname=James")
public List<Person> peoplewiththeirFirstNameIsJames();
Query with one variable
@Query("firstname=%s")
public List<Person> peoplewiththeirFirstName(String firstName);
Query with multiple variable values
@Query("firstname=%s and lastname=%s")
public List<Person> peoplewithFirstAndLastName(String firstName,String lastName);
Supported Query Keywords
True
False
Equal
NotEqual
Before
LessThan
LessThanEqual
After
GreaterThan
GreaterThanEqual
Between
IsNull
IsNotNull
In
NotIn
Containing
NotContaining
StartingWith
EndingWith
Like
NotLike
Regex
Community
Chat with developers
Stack Overflow
Submit your question with hazelcast
and spring-data-hazelcast
tags.
Mail Group
Please, join the mail group if you are interested in using or developing Hazelcast.
License
Hazelcast is available under the Apache 2 License. Please see the Licensing appendix for more information.
Copyright
Copyright (c) 2008-2019, Hazelcast, Inc. All Rights Reserved.
Visit http://www.hazelcast.com for more information.