Skip to main content

SpringBoot Curd Operation Controller Class

 package com.technoidentity.agastya.controller;


import java.util.Date;

import java.util.ArrayList;

import java.util.List;

import java.util.Optional;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.http.HttpStatus;

import org.springframework.http.ResponseEntity;

import org.springframework.transaction.annotation.Transactional;

import org.springframework.web.bind.annotation.CrossOrigin;

import org.springframework.web.bind.annotation.DeleteMapping;

import org.springframework.web.bind.annotation.GetMapping;

import org.springframework.web.bind.annotation.PathVariable;

import org.springframework.web.bind.annotation.PostMapping;

import org.springframework.web.bind.annotation.PutMapping;

import org.springframework.web.bind.annotation.RequestBody;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RestController;


import com.technoidentity.agastya.model.TelemetryEvent;

import com.technoidentity.agastya.repositery.TelemetryEventRepository;


@CrossOrigin(origins = "http://localhost:3000")

@RestController

@RequestMapping("/agastya")

public class TelemetryEventController {


@Autowired

private TelemetryEventRepository repositery;


// Display All TelemetryEvent Object

@GetMapping("/telemetry")

public ResponseEntity<List<TelemetryEvent>> getAllTelemetryEvent() {

try {

List<TelemetryEvent> telemetryEvents = new ArrayList<TelemetryEvent>();

repositery.findAll().forEach(telemetryEvents::add);

if (telemetryEvents.isEmpty()) {

return new ResponseEntity<List<TelemetryEvent>>(HttpStatus.NO_CONTENT);

}

return new ResponseEntity<List<TelemetryEvent>>(telemetryEvents, HttpStatus.OK);

} catch (Exception e) {

return new ResponseEntity<>(null, HttpStatus.INTERNAL_SERVER_ERROR);

}

}


// Display TelemetryEvent based on the Id

@GetMapping("/telemetry/{id}")

@Transactional(readOnly = true)

public ResponseEntity<TelemetryEvent> getTelemetryEventById(@PathVariable("id") String deviceId) {

Optional<TelemetryEvent> telemetryevent = repositery.findById(deviceId);


if (telemetryevent.isPresent()) {

return new ResponseEntity<TelemetryEvent>(telemetryevent.get(), HttpStatus.OK);


} else {

return new ResponseEntity<>(HttpStatus.NOT_FOUND);

}

}


// Update command

@PutMapping("/telemetry/{id}")

public ResponseEntity<TelemetryEvent> updateTelemetryEvent(@PathVariable("id") String deviceId,

@RequestBody TelemetryEvent telemetryevent) {

java.util.Optional<TelemetryEvent> telemetryevent1 = repositery.findById(deviceId);

          Date d=new Date();

if (telemetryevent1.isPresent()) {

TelemetryEvent _tutorial = telemetryevent1.get();

_tutorial.setDeviceId(telemetryevent.getDeviceId());

_tutorial.setTimestamp(d);

_tutorial.setTelemetryKey(telemetryevent.getTelemetryKey());

_tutorial.setTelemetryValue(telemetryevent.getTelemetryValue());

return new ResponseEntity<>(repositery.save(_tutorial), HttpStatus.OK);

} else {

return new ResponseEntity<>(HttpStatus.NOT_FOUND);

}


}


// delete by ID

@DeleteMapping("/telemetry/{id}")

public ResponseEntity<String> deleteTelemetryEvent(@PathVariable("id") String deviceId) {

try {

repositery.deleteById(deviceId);

return new ResponseEntity<String>(deviceId + " Is Deleted.?", HttpStatus.OK);

} catch (Exception e) {

return new ResponseEntity<>(HttpStatus.INTERNAL_SERVER_ERROR);

}

}


/* delete all

@DeleteMapping("/telemetry")

public ResponseEntity<String> deleteAllTelemetryEvent() {

try {

repositery.deleteAll();

return new ResponseEntity<String>("Deleted All record", HttpStatus.OK);

} catch (Exception e) {

return new ResponseEntity<>(HttpStatus.INTERNAL_SERVER_ERROR);

}

}*/


// insert TelemetryEvent Data

@PostMapping("/telemetry")

public ResponseEntity<?> createTelemetryEvent(@RequestBody TelemetryEvent telemetryEvent) {

try {

Date d=new Date();

repositery.save(new TelemetryEvent(telemetryEvent.getDeviceId(),d ,

telemetryEvent.getTelemetryKey(), telemetryEvent.getTelemetryValue()));

return new ResponseEntity<String>("TelemetryEvent Data is inserted", HttpStatus.OK);

} catch (Exception e) {

return new ResponseEntity<>(null, HttpStatus.INTERNAL_SERVER_ERROR);

}

}


}


Comments

Popular posts from this blog

How to Send OTP in Mobile Number | login with OTP mobile Number | How to send OTP in mobile no with Spring Boot APP

   ðŸ˜‚               Login with Mobile Number OTP ---------------------------------------------------------------------------- If you want to develop a project to log in with OTP mobile Number in Spring Boot Applications then this post for you. In this post, I am going to use some other service to send the OTP in mobile number. we have to use it in this project spring boot. we are going to use Twilio to send SMS. we are going to use a web socket to send the data from the browser to the SMS gateway. Oracle Database for store the user details. <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> <version>2.3.3.RELEASE</version> </dependency> <dependency> <groupId>com.twilio.sdk</grou

Spring Boot With MySQL Database connection with Examples | MySQl Database Configuration with Spring Boot Projects

 ðŸ˜ƒ MySQL Database Configuration with Spring Boot Projects  In this article, we are going to introduce How to connect MySQL Database with the Spring Boot project. pom.xml   <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>runtime</scope> <optional>true</optional> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.projectlombok</gro

How can we create Auto generated field or ID for mongodb using spring boot

😂 How can we create an Auto-generated field or ID for MongoDB using spring boot? First Create One Application Like Mongodb_sequence-id-generator Pom.XML <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> </dependency> <dependency> <groupId>de.flapdoodle.embed</groupId> <artifactId>de.flapdoodle.embed.mongo</artifactId> </dependency> User.java package com.app; import org.springframework.data.annotation.Id; import org.springframework.data.annotation.Transient; import org.springframework.data.mongodb.core.mapping.Document; @Document(collection = "users_db") public class User { @Transient public static final String SEQUENCE_NAME = &