Skip to content

Commit bf76d97

Browse files
committed
saving first version
1 parent 0320ed3 commit bf76d97

File tree

9 files changed

+471
-0
lines changed

9 files changed

+471
-0
lines changed

.gitignore

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
*.iml
2+
.idea/
3+
target/
4+
*.jar

pom.xml

+81
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4+
<modelVersion>4.0.0</modelVersion>
5+
6+
<groupId>com.mongodb</groupId>
7+
<artifactId>java-spring-boot-mongodb-starter</artifactId>
8+
<version>0.0.1-SNAPSHOT</version>
9+
<packaging>jar</packaging>
10+
11+
<name>java-spring-boot-mongodb-starter</name>
12+
<description>Quick start project</description>
13+
14+
<!-- <parent>
15+
<groupId>org.springframework.boot</groupId>
16+
<artifactId>spring-boot-starter-parent</artifactId>
17+
<version>2.0.4.RELEASE</version>
18+
<relativePath/>
19+
</parent>-->
20+
21+
<properties>
22+
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
23+
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
24+
<java.version>9</java.version>
25+
</properties>
26+
27+
<dependencyManagement>
28+
<dependencies>
29+
<dependency>
30+
<groupId>org.mongodb</groupId>
31+
<artifactId>bson</artifactId>
32+
<version>3.8.1</version>
33+
</dependency>
34+
<dependency>
35+
<groupId>org.mongodb</groupId>
36+
<artifactId>mongodb-driver-core</artifactId>
37+
<version>3.8.1</version>
38+
</dependency>
39+
<dependency>
40+
<groupId>org.springframework.boot</groupId>
41+
<artifactId>spring-boot-dependencies</artifactId>
42+
<version>2.0.4.RELEASE</version>
43+
<type>pom</type>
44+
<scope>import</scope>
45+
</dependency>
46+
</dependencies>
47+
</dependencyManagement>
48+
49+
<dependencies>
50+
<dependency>
51+
<groupId>org.mongodb</groupId>
52+
<artifactId>mongodb-driver-sync</artifactId>
53+
<version>3.8.1</version>
54+
</dependency>
55+
<dependency>
56+
<groupId>org.springframework.boot</groupId>
57+
<artifactId>spring-boot-starter-web</artifactId>
58+
<!-- <exclusions>
59+
<exclusion>
60+
<groupId>org.mongodb</groupId>
61+
<artifactId>bson</artifactId>
62+
</exclusion>
63+
<exclusion>
64+
<groupId>org.mongodb</groupId>
65+
<artifactId>mongodb-driver-core</artifactId>
66+
</exclusion>
67+
</exclusions>-->
68+
</dependency>
69+
</dependencies>
70+
71+
<build>
72+
<plugins>
73+
<plugin>
74+
<groupId>org.springframework.boot</groupId>
75+
<artifactId>spring-boot-maven-plugin</artifactId>
76+
<version>2.0.4.RELEASE</version>
77+
</plugin>
78+
</plugins>
79+
</build>
80+
81+
</project>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
package com.mongodb.mongoiot;
2+
3+
// import com.mongodb.MongoClient;
4+
// import com.mongodb.MongoClientOptions;
5+
// import com.mongodb.MongoClientURI;
6+
7+
import com.mongodb.client.MongoClient;
8+
import com.mongodb.client.MongoClients;
9+
import org.bson.codecs.configuration.CodecRegistry;
10+
import org.bson.codecs.pojo.PojoCodecProvider;
11+
import org.springframework.beans.factory.annotation.Value;
12+
import org.springframework.context.annotation.Bean;
13+
import org.springframework.context.annotation.Configuration;
14+
15+
import static org.bson.codecs.configuration.CodecRegistries.fromRegistries;
16+
17+
@Configuration
18+
public class ConfigurationSpring {
19+
20+
@Value("${spring.data.mongodb.uri}")
21+
private String connectionString;
22+
23+
@Bean
24+
public MongoClient mongoClient() {
25+
/*CodecRegistry codecRegistry = fromRegistries(MongoClient.getDefaultCodecRegistry(),
26+
fromProviders(PojoCodecProvider.builder().automatic(true).build()));
27+
28+
MongoClientOptions.Builder options = new MongoClientOptions.Builder().codecRegistry(codecRegistry);
29+
MongoClientURI uri = new MongoClientURI(connectionString, options);
30+
return new MongoClient(uri);*/
31+
32+
CodecRegistry pojoCodecRegistry = fromRegistries(MongoClient.getDefaultCodecRegistry(),
33+
fromProviders(PojoCodecProvider.builder().automatic(true).build()));
34+
35+
36+
return MongoClients.create("mongodb://hostOne:27017,hostTwo:27018");
37+
38+
39+
}
40+
41+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package com.mongodb.mongoiot;
2+
3+
import org.springframework.boot.SpringApplication;
4+
import org.springframework.boot.autoconfigure.SpringBootApplication;
5+
6+
@SpringBootApplication
7+
public class StarterApplication {
8+
9+
public static void main(String[] args) {
10+
SpringApplication.run(StarterApplication.class, args);
11+
}
12+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
package com.mongodb.mongoiot.controllers;
2+
3+
import com.mongodb.mongoiot.models.Person;
4+
import com.mongodb.mongoiot.repositories.PersonRepository;
5+
import org.springframework.http.ResponseEntity;
6+
import org.springframework.web.bind.annotation.*;
7+
8+
import java.util.List;
9+
10+
@RestController
11+
@RequestMapping("/api")
12+
public class PersonController {
13+
14+
private final PersonRepository personRepository;
15+
16+
public PersonController(PersonRepository personRepository) {
17+
this.personRepository = personRepository;
18+
}
19+
20+
@PostMapping("person")
21+
public ResponseEntity<Person> postPerson(@RequestBody Person person) {
22+
Person saved = personRepository.save(person);
23+
return ResponseEntity.ok(saved);
24+
}
25+
26+
@GetMapping("persons")
27+
public ResponseEntity<List<Person>> getPersons() {
28+
List<Person> people = personRepository.findAll();
29+
return ResponseEntity.ok(people);
30+
}
31+
}

0 commit comments

Comments
 (0)