Skip to content

Commit 63475f2

Browse files
committed
fixed unique constraints violations
1 parent 3a01887 commit 63475f2

File tree

3 files changed

+11
-8
lines changed

3 files changed

+11
-8
lines changed

pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,12 @@
1313
<parent>
1414
<groupId>org.springframework.boot</groupId>
1515
<artifactId>spring-boot-starter-parent</artifactId>
16-
<version>2.3.0.RELEASE</version>
16+
<version>2.3.3.RELEASE</version>
1717
</parent>
1818

1919
<properties>
2020
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
21-
<java.version>1.8</java.version>
21+
<java.version>11</java.version>
2222
</properties>
2323

2424
<repositories>

src/main/java/com/arangodb/spring/demo/runner/CrudRunner.java

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,8 @@
4343
@ComponentScan("com.arangodb.spring.demo")
4444
public class CrudRunner implements CommandLineRunner {
4545

46+
static final Collection<Character> characters = createCharacters();
47+
4648
@Autowired
4749
private ArangoOperations operations;
4850
@Autowired
@@ -57,7 +59,9 @@ public void run(final String... args) throws Exception {
5759

5860
// save a single entity in the database
5961
// there is no need of creating the collection first. This happen automatically
60-
final Character nedStark = new Character("Ned", "Stark", true, 41);
62+
final Character nedStark = characters.stream()
63+
.filter(it-> "Ned".equals(it.getName()) && "Stark".equals(it.getSurname()))
64+
.findFirst().orElseThrow();
6165
repository.save(nedStark);
6266
// the generated id from the database is set in the original entity
6367
System.out.println(String.format("Ned Stark saved in the database with id: '%s'", nedStark.getId()));
@@ -74,9 +78,8 @@ public void run(final String... args) throws Exception {
7478
System.out.println(String.format("Ned Stark after 'alive' flag was updated: %s", deadNed));
7579

7680
// lets save some additional characters
77-
final Collection<Character> createCharacters = createCharacters();
78-
System.out.println(String.format("Save %s additional characters", createCharacters.size()));
79-
repository.saveAll(createCharacters);
81+
System.out.println(String.format("Save %s additional characters", characters.size()));
82+
repository.saveAll(characters);
8083

8184
final Iterable<Character> all = repository.findAll();
8285
final long count = StreamSupport.stream(Spliterators.spliteratorUnknownSize(all.iterator(), 0), false).count();
@@ -93,7 +96,7 @@ public void run(final String... args) throws Exception {
9396
}
9497

9598
public static Collection<Character> createCharacters() {
96-
return Arrays.asList(new Character("Ned", "Stark", false, 41), new Character("Robert", "Baratheon", false),
99+
return Arrays.asList(new Character("Ned", "Stark", true, 41), new Character("Robert", "Baratheon", false),
97100
new Character("Jaime", "Lannister", true, 36), new Character("Catelyn", "Stark", false, 40),
98101
new Character("Cersei", "Lannister", true, 36), new Character("Daenerys", "Targaryen", true, 16),
99102
new Character("Jorah", "Mormont", false), new Character("Petyr", "Baelish", false),

src/main/java/com/arangodb/spring/demo/runner/RelationsRunner.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ public class RelationsRunner implements CommandLineRunner {
4646
@Override
4747
public void run(final String... args) throws Exception {
4848
System.out.println("# Relations");
49-
characterRepo.saveAll(CrudRunner.createCharacters());
49+
characterRepo.saveAll(CrudRunner.characters);
5050

5151
// first create some relations for the Starks and Lannisters
5252
characterRepo.findByNameAndSurname("Ned", "Stark").ifPresent(ned -> {

0 commit comments

Comments
 (0)