Ejercicios Prácticos - JSP, Jakarta EE y Spring

Ejercicio 1: CREACIÓN DEL PROYECTO CON SPRING-BOOT
Configurar Properties del Proyecto
spring.datasource.url=jdbc:mysql://localhost:3306/academico
spring.datasource.username=root
spring.datasource.password=123456
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true
CREACIÓN DEL MODELO ESTUDIANTE
Modelo Estudiante
package com.jsuasnabar.apiAcademico.models;

import jakarta.persistence.*;

@Entity
@Table(name = "estudiante")
public class Estudiante {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long idEstudiante;

    private String nomEstudiante;
    private String dirEstudiante;
    private String ciuEstudiante;

    // Getters y setters
    public Long getIdEstudiante() {
        return idEstudiante;
    }
CREACIÓN DEL ESTUDIANTEREPOSITORY
Repositorio Estudiante
package com.jsuasnabar.apiAcademico.repositories;
import com.jsuasnabar.apiAcademico.models.Estudiante;
import org.springframework.data.jpa.repository.JpaRepository;
public interface EstudianteRepository extends JpaRepository{
}
CREACIÓN DEL ESTUDIANTECONTROLLER
Controlador Estudiante
package com.jsuasnabar.apiAcademico.controllers;
import com.jsuasnabar.apiAcademico.models.Estudiante;
import com.jsuasnabar.apiAcademico.repositories.EstudianteRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
@RequestMapping("/api/estudiantes")
public class EstudianteController {
 @Autowired
 private EstudianteRepository repo;
 @PostMapping
 public Estudiante agregar(@RequestBody Estudiante estudiante) {
 return repo.save(estudiante);
 }
 @PutMapping("/{id}")
 public ResponseEntity modificar(@PathVariable Long id, @RequestBody
Estudiante datos) {
 return repo.findById(id)
 .map(est -> {
 est.setNomEstudiante(datos.getNomEstudiante());
 est.setDirEstudiante(datos.getDirEstudiante());
 est.setCiuEstudiante(datos.getCiuEstudiante());
 return ResponseEntity.ok(repo.save(est));
 })
 .orElse(ResponseEntity.notFound().build());
 }
 @DeleteMapping("/{id}")
 public ResponseEntity eliminar(@PathVariable Long id) {
 if (repo.existsById(id)) {repo.deleteById(id);
 return ResponseEntity.noContent().build();
 }
 return ResponseEntity.notFound().build();
 }
 @GetMapping
 public List listarTodos() {
 return repo.findAll();
 }
 @GetMapping("/{id}")
 public ResponseEntity buscarPorId(@PathVariable Long id) {
 return repo.findById(id)
 .map(ResponseEntity::ok)
 .orElse(ResponseEntity.notFound().build());
 }
}

← Volver