diff --git a/spring-data-redis/README.md b/spring-data-redis/README.md
new file mode 100644
index 0000000000..b9b2e5d93d
--- /dev/null
+++ b/spring-data-redis/README.md
@@ -0,0 +1,15 @@
+## Spring Data Redis
+
+### Relevant Articles:
+- [Introduction to Spring Data Redis]
+
+### Build the Project with Tests Running
+```
+mvn clean install
+```
+
+### Run Tests Directly
+```
+mvn test
+```
+
diff --git a/spring-data-redis/pom.xml b/spring-data-redis/pom.xml
new file mode 100644
index 0000000000..98da69934c
--- /dev/null
+++ b/spring-data-redis/pom.xml
@@ -0,0 +1,76 @@
+
+ 4.0.0
+
+ org.baeldung
+ sprint-data-redis
+ 0.0.1-SNAPSHOT
+ jar
+
+
+ UTF-8
+ 4.2.2.RELEASE
+ 1.6.2.RELEASE
+ 0.8.0
+
+
+
+
+ org.springframework.data
+ spring-data-redis
+ ${spring-data-redis}
+
+
+
+ cglib
+ cglib-nodep
+ 2.2
+
+
+
+ log4j
+ log4j
+ 1.2.16
+
+
+
+ redis.clients
+ jedis
+ 2.5.1
+ jar
+
+
+
+ org.springframework
+ spring-core
+ ${spring.version}
+
+
+
+ org.springframework
+ spring-context
+ ${spring.version}
+
+
+
+ junit
+ junit
+ 4.12
+ test
+
+
+
+ org.springframework
+ spring-test
+ ${spring.version}
+ test
+
+
+
+ com.lordofthejars
+ nosqlunit-redis
+ ${nosqlunit.version}
+
+
+
+
diff --git a/spring-data-redis/src/main/java/org/baeldung/spring/data/redis/config/RedisConfig.java b/spring-data-redis/src/main/java/org/baeldung/spring/data/redis/config/RedisConfig.java
new file mode 100644
index 0000000000..a7e75a438a
--- /dev/null
+++ b/spring-data-redis/src/main/java/org/baeldung/spring/data/redis/config/RedisConfig.java
@@ -0,0 +1,24 @@
+package org.baeldung.spring.data.redis.config;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.ComponentScan;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.data.redis.connection.jedis.JedisConnectionFactory;
+import org.springframework.data.redis.core.RedisTemplate;
+
+@Configuration
+@ComponentScan("org.baeldung.spring.data.redis")
+public class RedisConfig {
+
+ @Bean
+ JedisConnectionFactory jedisConnectionFactory() {
+ return new JedisConnectionFactory();
+ }
+
+ @Bean
+ public RedisTemplate redisTemplate() {
+ final RedisTemplate< String, Object> template = new RedisTemplate();
+ template.setConnectionFactory(jedisConnectionFactory());
+ return template;
+ }
+}
diff --git a/spring-data-redis/src/main/java/org/baeldung/spring/data/redis/model/Student.java b/spring-data-redis/src/main/java/org/baeldung/spring/data/redis/model/Student.java
new file mode 100644
index 0000000000..acc96899ce
--- /dev/null
+++ b/spring-data-redis/src/main/java/org/baeldung/spring/data/redis/model/Student.java
@@ -0,0 +1,59 @@
+package org.baeldung.spring.data.redis.model;
+
+import java.io.Serializable;
+
+public class Student implements Serializable {
+
+ public enum Gender {
+ MALE, FEMALE
+ }
+
+ private String id;
+ private String name;
+ private Gender gender;
+ private int grade;
+
+ public Student(String id, String name, Gender gender, int grade) {
+ this.id = id;
+ this.name = name;
+ this.gender = gender;
+ this.grade = grade;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public Gender getGender() {
+ return gender;
+ }
+
+ public void setGender(Gender gender) {
+ this.gender = gender;
+ }
+
+ public int getGrade() {
+ return grade;
+ }
+
+ public void setGrade(int grade) {
+ this.grade = grade;
+ }
+
+ @Override
+ public String toString() {
+ return "Student{" + "id='" + id + '\'' + ", name='" + name + '\'' + ", gender=" + gender + ", grade=" + grade + '}';
+ }
+}
\ No newline at end of file
diff --git a/spring-data-redis/src/main/java/org/baeldung/spring/data/redis/repo/StudentRepository.java b/spring-data-redis/src/main/java/org/baeldung/spring/data/redis/repo/StudentRepository.java
new file mode 100644
index 0000000000..6a909ed137
--- /dev/null
+++ b/spring-data-redis/src/main/java/org/baeldung/spring/data/redis/repo/StudentRepository.java
@@ -0,0 +1,19 @@
+package org.baeldung.spring.data.redis.repo;
+
+import org.baeldung.spring.data.redis.model.Student;
+import org.springframework.stereotype.Component;
+
+import java.util.Map;
+
+public interface StudentRepository {
+
+ void saveStudent(Student person);
+
+ void updateStudent(Student student);
+
+ Student findStudent(String id);
+
+ Map