solo hay que tocar:

  • aplication.properties (confugurar url, base de datos, credencialess)
  • build.gradle (agregar las dependencia de sprinboot JPA y el driver mongodb o postgres o lo que use):
    • [Tu código Java] —> [Spring Data JPA / Hibernate] —> [Driver de PostgreSQL] —> [Base de datos PostgreSQL]
    • repository.save(usuario) Genera: “INSERT INTO usuarios…” Envía la consulta por red Ejecuta y guarda los datos
    • Tu código (Java): Llamas a un método de Java puro como usuarioRepository.save(nuevoUsuario).
    • Spring Data JPA / Hibernate: Toma el objeto nuevoUsuario, revisa sus anotaciones (@Entity, @Table, @Id) y traduce esa acción en una consulta SQL: INSERT INTO usuarios (nombre, email) VALUES ('Juan', 'juan@email.com').
    • Driver de PostgreSQL: Recibe ese texto SQL, abre el socket/puerto de red (usando la cadena de conexión de tu application.properties), se autentica con las credenciales y le entrega la instrucción en el protocolo nativo de PostgreSQL.
    • Base de Datos PostgreSQL: Procesa el SQL, escribe el registro en el disco y le devuelve una respuesta de éxito al driver, que a su vez se la devuelve a JPA para retornar tu objeto guardado.
    • Sin JPA tendrías que escribir el SQL a mano en String. Sin el Driver, Java no tendría forma de enviar ese SQL a la base de datos.
  • la entity/document (es la tabla de la base de datos, document si es mongo, entity si es postgres)
  • el repository (clase que genera funciones automáticas con las querya ya todo hecho y podés agregar manuales)
  • el bean inyectado del repository (para usar postgres/mongo o las querys del repository, generalmente el bean se inyecta con @Autowired en un servicio o controller)

aca, leer para crear un registro en postgres: