diff --git a/jpa/example/pom.xml b/jpa/example/pom.xml
index 19764143..bf943ea7 100644
--- a/jpa/example/pom.xml
+++ b/jpa/example/pom.xml
@@ -13,16 +13,9 @@
Spring Data JPA - Example
Small sample project showing the usage of Spring Data JPA.
-
-
-
-
- com.google.guava
- guava
- 16.0.1
-
-
-
+
+ Hopper-BUILD-SNAPSHOT
+
diff --git a/jpa/example/src/main/java/example/springdata/jpa/simple/SimpleUserRepository.java b/jpa/example/src/main/java/example/springdata/jpa/simple/SimpleUserRepository.java
index 0cddebb3..4581666d 100644
--- a/jpa/example/src/main/java/example/springdata/jpa/simple/SimpleUserRepository.java
+++ b/jpa/example/src/main/java/example/springdata/jpa/simple/SimpleUserRepository.java
@@ -16,6 +16,7 @@
package example.springdata.jpa.simple;
import java.util.List;
+import java.util.Optional;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Slice;
@@ -23,8 +24,6 @@ import org.springframework.data.domain.Sort;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.CrudRepository;
-import com.google.common.base.Optional;
-
/**
* Simple repository interface for {@link User} instances. The interface is used to declare so called query methods,
* methods to retrieve single entities or collections of them.
@@ -44,7 +43,13 @@ public interface SimpleUserRepository extends CrudRepository {
*/
User findByTheUsersName(String username);
- Optional findByUsername(String username);
+ /**
+ * Uses {@link Optional} as return and parameter type.
+ *
+ * @param username
+ * @return
+ */
+ Optional findByUsername(Optional username);
/**
* Find all users with the given lastname. This method will be translated into a query by constructing it directly
@@ -67,7 +72,7 @@ public interface SimpleUserRepository extends CrudRepository {
/**
* Returns all users with the given name as first- or lastname. This makes the query to method relation much more
- * refactoring safe as the order of the method parameters is completely irrelevant.
+ * refactoring-safe as the order of the method parameters is completely irrelevant.
*
* @param name
* @return
diff --git a/jpa/example/src/test/java/example/springdata/jpa/simple/SimpleUserRepositoryTests.java b/jpa/example/src/test/java/example/springdata/jpa/simple/SimpleUserRepositoryTests.java
index 13963517..994cae9f 100644
--- a/jpa/example/src/test/java/example/springdata/jpa/simple/SimpleUserRepositoryTests.java
+++ b/jpa/example/src/test/java/example/springdata/jpa/simple/SimpleUserRepositoryTests.java
@@ -22,6 +22,7 @@ import static org.springframework.data.domain.Sort.Direction.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
+import java.util.Optional;
import org.junit.Before;
import org.junit.Test;
@@ -88,13 +89,13 @@ public class SimpleUserRepositoryTests {
}
@Test
- public void useGuavaOptionalInsteadOfNulls() {
+ public void useOptionalAsReturnAndParameterType() {
- assertThat(repository.findByUsername("foobar").isPresent(), is(false));
+ assertThat(repository.findByUsername(Optional.of("foobar")), is(Optional.empty()));
repository.save(user);
- assertThat(repository.findByUsername("foobar").isPresent(), is(true));
+ assertThat(repository.findByUsername(Optional.of("foobar")).isPresent(), is(true));
}
@Test