Spring boot connection to mongoDB
application.properties
#mongodb spring.data.mongodb.host=localhost spring.data.mongodb.port=27017 spring.data.mongodb.database=mongotuto #logging logging.level.org.springframework.data=debug logging.level.=error
POM.xml
4.0.0 org.springframework.boot spring-boot-starter-parent 2.1.4.RELEASE com.example SpringBootMongoDB03 0.0.1-SNAPSHOT SpringBootMongoDB03 Demo project for Spring Boot 1.8 org.springframework.boot spring-boot-starter-data-mongodb org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-devtools runtime org.springframework.boot spring-boot-starter-test test org.springframework.boot spring-boot-maven-plugin
Application Main class
package com.example.discovery; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class SpringBootMongoDb03Application { public static void main(String[] args) { SpringApplication.run(SpringBootMongoDb03Application.class, args); } }
Entity Car
package com.example.discovery; import org.bson.types.ObjectId; import org.springframework.data.annotation.Id; import org.springframework.data.mongodb.core.mapping.Document; @Document(collection = "Car") public class Car { @Id public ObjectId _id; public String brand; public String name; public String color; public Car(ObjectId _id, String name, String brand, String color) { this._id = _id; this.name = name; this.brand = brand; this.color = color; } public ObjectId get_id() { return _id; } public void set_id(ObjectId _id) { this._id = _id; } public String getbrand() { return brand; } public void setbrand(String brand) { this.brand = brand; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getcolor() { return color; } public void setcolor(String color) { this.color = color; } }
CarRepository
package com.example.discovery; import org.bson.types.ObjectId; import org.springframework.data.mongodb.repository.MongoRepository; public interface CarRepository extends MongoRepository{ Car findBy_id(ObjectId _id); }
CarController
package com.example.discovery; import java.util.List; import javax.validation.Valid; import org.bson.types.ObjectId; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping("/cars") public class CarController { @Autowired private CarRepository repository; @RequestMapping(value = "/", method = RequestMethod.GET) public ListgetAllCars() { return repository.findAll(); } @RequestMapping(value = "/{id}", method = RequestMethod.GET) public Car getCarById(@PathVariable("id") ObjectId id) { return repository.findBy_id(id); } @RequestMapping(value = "/", method = RequestMethod.POST) public Car createCar(@Valid @RequestBody Car Cars) { Cars.set_id(ObjectId.get()); repository.save(Cars); return Cars; } @RequestMapping(value = "/{id}", method = RequestMethod.DELETE) public void deleteCar(@PathVariable ObjectId id) { repository.delete(repository.findBy_id(id)); } @RequestMapping(value = "/{id}", method = RequestMethod.PUT) public void modifyCarById(@PathVariable("id") ObjectId id, @Valid @RequestBody Car Cars) { Cars.set_id(id); repository.save(Cars); } }
This is just a trick, hope it paved your way out.
No comments:
Post a Comment