diff --git a/hazelcast/pom.xml b/hazelcast/pom.xml
new file mode 100644
index 0000000000..00960eadd2
--- /dev/null
+++ b/hazelcast/pom.xml
@@ -0,0 +1,77 @@
+
+ 4.0.0
+ com.baeldung
+ hazelcast
+ 0.0.1-SNAPSHOT
+ hazelcast
+
+
+
+ com.hazelcast
+ hazelcast
+ ${hazelcast.version}
+
+
+
+ com.hazelcast
+ hazelcast-client
+ 3.7.2
+
+
+
+
+ org.slf4j
+ slf4j-api
+ ${org.slf4j.version}
+
+
+
+ ch.qos.logback
+ logback-classic
+ ${logback.version}
+
+
+
+ ch.qos.logback
+ logback-core
+ ${logback.version}
+
+
+
+
+
+ hazelcast
+
+
+ src/main/resources
+ true
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ ${maven-compiler-plugin.version}
+
+ 1.8
+ 1.8
+
+
+
+
+
+
+
+ 3.7.2
+
+
+ 1.7.21
+ 1.1.7
+
+
+ 3.5.1
+
+
+
\ No newline at end of file
diff --git a/hazelcast/src/main/java/com/baeldung/hazelcast/cluster/NativeClient.java b/hazelcast/src/main/java/com/baeldung/hazelcast/cluster/NativeClient.java
new file mode 100644
index 0000000000..697e362289
--- /dev/null
+++ b/hazelcast/src/main/java/com/baeldung/hazelcast/cluster/NativeClient.java
@@ -0,0 +1,24 @@
+package com.baeldung.hazelcast.cluster;
+
+import java.util.Map.Entry;
+
+import com.hazelcast.client.HazelcastClient;
+import com.hazelcast.client.config.ClientConfig;
+import com.hazelcast.config.GroupConfig;
+import com.hazelcast.core.HazelcastInstance;
+import com.hazelcast.core.IMap;
+
+public class NativeClient {
+
+ public static void main(String[] args) throws InterruptedException {
+ ClientConfig config = new ClientConfig();
+ GroupConfig groupConfig = config.getGroupConfig();
+ groupConfig.setName("dev");
+ groupConfig.setPassword("dev-pass");
+ HazelcastInstance hazelcastInstanceClient = HazelcastClient.newHazelcastClient(config);
+ IMap map = hazelcastInstanceClient.getMap("data");
+ for (Entry entry : map.entrySet()) {
+ System.out.println(String.format("Key: %d, Value: %s", entry.getKey(), entry.getValue()));
+ }
+ }
+}
diff --git a/hazelcast/src/main/java/com/baeldung/hazelcast/cluster/ServerNode.java b/hazelcast/src/main/java/com/baeldung/hazelcast/cluster/ServerNode.java
new file mode 100644
index 0000000000..36028834a4
--- /dev/null
+++ b/hazelcast/src/main/java/com/baeldung/hazelcast/cluster/ServerNode.java
@@ -0,0 +1,19 @@
+package com.baeldung.hazelcast.cluster;
+
+import java.util.Map;
+
+import com.hazelcast.core.Hazelcast;
+import com.hazelcast.core.HazelcastInstance;
+import com.hazelcast.core.IdGenerator;
+
+public class ServerNode {
+
+ public static void main(String[] args) {
+ HazelcastInstance hazelcastInstance = Hazelcast.newHazelcastInstance();
+ Map map = hazelcastInstance.getMap("data");
+ IdGenerator idGenerator = hazelcastInstance.getIdGenerator("newid");
+ for (int i = 0; i < 10; i++) {
+ map.put(idGenerator.newId(), "message" + 1);
+ }
+ }
+}
diff --git a/hazelcast/src/main/resources/hazelcast.xml b/hazelcast/src/main/resources/hazelcast.xml
new file mode 100644
index 0000000000..f29dc532b8
--- /dev/null
+++ b/hazelcast/src/main/resources/hazelcast.xml
@@ -0,0 +1,16 @@
+
+
+
+ 5701
+
+
+
+
+ machine1
+ localhost
+
+
+
+
\ No newline at end of file
diff --git a/hazelcast/src/main/resources/logback.xml b/hazelcast/src/main/resources/logback.xml
new file mode 100644
index 0000000000..8b566286b8
--- /dev/null
+++ b/hazelcast/src/main/resources/logback.xml
@@ -0,0 +1,18 @@
+
+
+
+
+
+ %d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg %n
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file