Не сохраняются данные запроса в postgresql через spring-boot, сам запрос возвращает 201 в постмане
Написал рест, отрабатывает со статусом 201 (запрос POST employee/create) и возвращает указанное сообщение в постмане, но запись не создаётся в БД. В логах исключений нет
Мои классы:
import com.example.uralsibtest.exceptions.EmployeeNotFoundException;
import com.example.uralsibtest.repository.EmployeeRepository;
import com.example.uralsibtest.service.Employee;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
@RestController
public class EmployeeController{
@Autowired
EmployeeRepository employeeRepository;
@GetMapping("employee/{id}")
public Employee getEmployeeById(@PathVariable(value = "id")int employeeId) throws EmployeeNotFoundException, Throwable {
return (Employee) employeeRepository.findById(employeeId)
.orElseThrow(() -> new EmployeeNotFoundException(employeeId));
}
@PostMapping("/employee/create")
public ResponseEntity createEmployee(@RequestBody Employee employee) {
return ResponseEntity.status(HttpStatus.CREATED).body("HTTP Status will be CREATED (CODE 201)\n");
}
@PutMapping("/employee/update/name")
public Employee updateEmployeeName(@PathVariable(value = "id") int employeeId, @RequestBody String newName) throws
EmployeeNotFoundException{
Employee employee = (Employee) employeeRepository.findById(employeeId)
.orElseThrow(() -> new EmployeeNotFoundException(employeeId));
employee.setName(newName);
Employee updatedEmployee = employeeRepository.save(employee);
return updatedEmployee;
}
}
public interface EmployeeRepository extends JpaRepository<Employee, Integer> {
}
import com.example.uralsibtest.enums.Position;
import jakarta.annotation.Nonnull;
import jakarta.persistence.*;
import lombok.*;
@Entity
@Table(name = "EMPLOYEE")
@AllArgsConstructor
@NoArgsConstructor
@Getter
@Setter
@ToString
public class Employee {
@Id
@GeneratedValue
@Column(name = "id")
private int id;
@Nonnull
@Column(name = "name")
private String name;
@Nonnull
@Column(name = "position")
private Position position;
@Nonnull
@Column(name = "department")
private int department;
@Nonnull
@Column(name = "phone")
private long phone;
@Column(name = "address")
private String address;
@Nonnull
@Column(name = "employment_date")
private String employmentDate;
}
application.properties:
spring.datasource.username=postgres
spring.datasource.password=62276227
spring.datasource.url=jdbc:postgresql://localhost:5432/URALSIB
spring.datasource.driver=org.postgresql.Driver
spring.jpa.show-sql=true
логи:
2023-06-13T21:34:20.183+03:00 INFO 12312 --- [ restartedMain] c.example.uralsibtest.ApplicationRunner : Starting ApplicationRunner using Java 20.0.1 with PID 12312 (C:\Users\dalum\IdeaProjects\uralsibtest\target\classes started by dalum in C:\Users\dalum\IdeaProjects\uralsibtest)
2023-06-13T21:34:20.185+03:00 INFO 12312 --- [ restartedMain] c.example.uralsibtest.ApplicationRunner : No active profile set, falling back to 1 default profile: "default"
2023-06-13T21:34:20.213+03:00 INFO 12312 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable
2023-06-13T21:34:20.213+03:00 INFO 12312 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG'
2023-06-13T21:34:20.569+03:00 INFO 12312 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode.
2023-06-13T21:34:20.602+03:00 INFO 12312 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 29 ms. Found 1 JPA repository interfaces.
2023-06-13T21:34:20.932+03:00 INFO 12312 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8080 (http)
2023-06-13T21:34:20.938+03:00 INFO 12312 --- [ restartedMain] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2023-06-13T21:34:20.938+03:00 INFO 12312 --- [ restartedMain] o.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/10.1.8]
2023-06-13T21:34:20.969+03:00 INFO 12312 --- [ restartedMain] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2023-06-13T21:34:20.969+03:00 INFO 12312 --- [ restartedMain] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 755 ms
2023-06-13T21:34:21.033+03:00 INFO 12312 --- [ restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting...
2023-06-13T21:34:21.141+03:00 INFO 12312 --- [ restartedMain] com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Added connection org.postgresql.jdbc.PgConnection@1c8b7c78
2023-06-13T21:34:21.142+03:00 INFO 12312 --- [ restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed.
2023-06-13T21:34:21.176+03:00 INFO 12312 --- [ restartedMain] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default]
2023-06-13T21:34:21.209+03:00 INFO 12312 --- [ restartedMain] org.hibernate.Version : HHH000412: Hibernate ORM core version 6.2.2.Final
2023-06-13T21:34:21.210+03:00 INFO 12312 --- [ restartedMain] org.hibernate.cfg.Environment : HHH000406: Using bytecode reflection optimizer
2023-06-13T21:34:21.277+03:00 INFO 12312 --- [ restartedMain] o.h.b.i.BytecodeProviderInitiator : HHH000021: Bytecode provider name : bytebuddy
2023-06-13T21:34:21.343+03:00 INFO 12312 --- [ restartedMain] o.s.o.j.p.SpringPersistenceUnitInfo : No LoadTimeWeaver setup: ignoring JPA class transformer
2023-06-13T21:34:21.386+03:00 INFO 12312 --- [ restartedMain] org.hibernate.orm.dialect : HHH035001: Using dialect: org.hibernate.dialect.PostgreSQLDialect, version: org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$DialectResolutionInfoImpl@533ceddc
2023-06-13T21:34:21.508+03:00 INFO 12312 --- [ restartedMain] o.h.b.i.BytecodeProviderInitiator : HHH000021: Bytecode provider name : bytebuddy
2023-06-13T21:34:21.861+03:00 INFO 12312 --- [ restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]
2023-06-13T21:34:21.863+03:00 INFO 12312 --- [ restartedMain] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default'
2023-06-13T21:34:22.017+03:00 WARN 12312 --- [ restartedMain] JpaBaseConfiguration$JpaWebConfiguration : spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning
2023-06-13T21:34:22.216+03:00 INFO 12312 --- [ restartedMain] o.s.b.d.a.OptionalLiveReloadServer : LiveReload server is running on port 35729
2023-06-13T21:34:22.237+03:00 INFO 12312 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path ''
2023-06-13T21:34:22.244+03:00 INFO 12312 --- [ restartedMain] c.example.uralsibtest.ApplicationRunner : Started ApplicationRunner in 2.277 seconds (process running for 2.637)
2023-06-13T21:34:31.343+03:00 INFO 12312 --- [nio-8080-exec-2] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring DispatcherServlet 'dispatcherServlet'
2023-06-13T21:34:31.343+03:00 INFO 12312 --- [nio-8080-exec-2] o.s.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet'
2023-06-13T21:34:31.343+03:00 INFO 12312 --- [nio-8080-exec-2] o.s.web.servlet.DispatcherServlet : Completed initialization in 0 ms
2023-06-13T21:42:36.640+03:00 INFO 12312 --- [ionShutdownHook] j.LocalContainerEntityManagerFactoryBean : Closing JPA EntityManagerFactory for persistence unit 'default'
2023-06-13T21:42:36.642+03:00 INFO 12312 --- [ionShutdownHook] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown initiated...
2023-06-13T21:42:36.644+03:00 INFO 12312 --- [ionShutdownHook] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown completed.
Буду рад советам!