Skip to content
Snippets Groups Projects
Commit fff38727 authored by Laurine's avatar Laurine
Browse files

8.1 BDD getUsers

parent 8af00411
Branches
No related tags found
No related merge requests found
version: '3.1'
services:
database:
container_name: api_database
image: postgres
environment:
POSTGRES_USER : user
POSTGRES_PASSWORD: pwd
POSTGRES_DB: db-name
ports:
- "5432:5432"
create table users
(
id SERIAL PRIMARY KEY,
first_name TEXT not null,
last_name TEXT not null,
age int null
)
INSERT INTO users (id, first_name, last_name, age) VALUES (1, 'Laurine', 'LE NET', 22);
INSERT INTO users (id, first_name, last_name, age) VALUES (2, 'Pilou', 'BERTRAND', 24);
INSERT INTO users (id, first_name, last_name, age) VALUES (3, 'Alain', 'CONNU', 26);
INSERT INTO users (id, first_name, last_name, age) VALUES (4, 'Aurélie', 'BIENCEQUETAECRIT', 20);
INSERT INTO users (id, first_name, last_name, age) VALUES (5, 'Barack', 'AFFRITTE', 22);
INSERT INTO users (id, first_name, last_name, age) VALUES (6, 'Camille', 'ONETTE', 23);
INSERT INTO users (id, first_name, last_name, age) VALUES (7, 'Jean', 'TENRIEN', 22);
INSERT INTO users (id, first_name, last_name, age) VALUES (8, 'Lara', 'TATOUILLE', 24);
...@@ -36,6 +36,12 @@ ...@@ -36,6 +36,12 @@
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId> <artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
<version>2.1.0</version> <version>2.1.0</version>
</dependency> </dependency>
<!-- https://mvnrepository.com/artifact/org.postgresql/postgresql -->
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.6.0</version>
</dependency>
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
......
package com.example.livecodingjavaspring; package com.example.livecodingjavaspring;
import lombok.Builder;
import lombok.Data; import lombok.Data;
@Data @Data
@Builder
public class User { public class User {
private String firstName; private String firstName;
private String lastName; private String lastName;
......
...@@ -2,22 +2,32 @@ package com.example.livecodingjavaspring; ...@@ -2,22 +2,32 @@ package com.example.livecodingjavaspring;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.sql.*;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@Service @Service
public class UserDao { public class UserDao {
private static final String FETCH_ALL_USERS_QUERY = "SELECT * FROM users";
public List<User> getUsers() { public List<User> getUsers() {
List<User> users = new ArrayList<>(); List<User> users = new ArrayList<>();
users.add(new User("Laurine", "LE NET", 22)); try (Connection connection = DriverManager.getConnection("jdbc:postgresql://localhost/db-name", "user", "pwd");
users.add(new User("Pilou", "BERTRAND", 24)); PreparedStatement preparedStatement = connection.prepareStatement(FETCH_ALL_USERS_QUERY)) {
users.add(new User("Alain", "CONNU", 26)); ResultSet resultSet = preparedStatement.executeQuery();
users.add(new User("Aurélie", "BIENCEQUETAECRIT", 20)); while (resultSet.next()) {
users.add(new User("Barack", "AFFRITTE", 22)); User user = User.builder()
users.add(new User("Camille", "ONETTE", 23)); .firstName(resultSet.getString("first_name"))
users.add(new User("Jean", "TENRIEN", 22)); .lastName(resultSet.getString("last_name"))
users.add(new User("Lara", "TATOUILLE", 24)); .age(resultSet.getInt("age"))
.build();
users.add(user);
}
} catch (SQLException e) {
throw new RuntimeException(e);
}
return users; return users;
} }
public List<User> addUser(List<User> users, User user) { public List<User> addUser(List<User> users, User user) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment