Tworzenie logowania do wypożyczalni i przechowywanie danych w bazie

0

Cześć. Chciałbym stworzyć logowanie do mojej wypożyczalni samochodów, ale nasuwa się pytanie.
Jak sprawić by użytkownik, który stworzył uprzednio swoje konto, zalogował się, wypożyczył samochod, a następnie wylogował się i zalogował ponownie miał ten wypożyczony samochód u siebie na liście. Czyli jak działać na tym samym obiekcie?

U mnie tabela z klientem wygląda tak:
screenshot-20180712185927.png i teraz dodać po prostu 2 kolumny - login i hasło, czy stworzyć nową tabelę o nazwie user i tam to będzie?

U mnie tworzenie obiektu clienta wygląda na tej zasadzie:

public Client createClient() {
        Client client = new Client();

        System.out.print("name: ");
        client.setName(input.next());
        System.out.print("surname: ");
        client.setSurname(input.next());
        System.out.print("city: ");
        client.setCity(input.next());
        System.out.print("house number: ");
        client.setHouseNumber(input.nextInt());
        System.out.print("street: ");
        client.setStreet(input.next());
        System.out.print("pesel number: ");
        client.setPeselNumber(input.nextLong());
        System.out.print("rent date: ");
        client.setRentDate(input.next());

        return client;
    }

Obiekt jest przesyłany do klasy CarRentalOptions:

void createNewCustomer(Client client) throws SQLException {
        dataBase.insertNewCustomer(client);
    }

Tutaj jeszcze urywek z implementacji metody dodającej do bazy danych klienta:

public void insertNewCustomer(Client client) throws SQLException {
        preparedStatement = connection.prepareStatement("insert into client" + "(namee, surname, street,houseNumber,city,peselNumber,rentDate)" + "values(?,?,?,?,?,?,?)");

        preparedStatement.setString(1, client.getName());
        preparedStatement.setString(2, client.getSurname());
        preparedStatement.setString(3, client.getStreet());
        preparedStatement.setInt(4, client.getHouseNumber());
        preparedStatement.setString(5, client.getCity());
        preparedStatement.setLong(6, client.getPeselNumber());
        preparedStatement.setString(7, client.getRentDate());

        preparedStatement.executeUpdate();
    }

Nie wiedziałem, który kod dodać, jak będzie potrzeba to wkleje cały kod.

0

A osoba logująca się do systemu jest tożsama z klientem wypożyczalni?

0
loza_szydercow napisał(a):

A osoba logująca się do systemu jest tożsama z klientem wypożyczalni?

Własnie o tym pomyślałem jak to rozwiązać i chyba zrobie, ze podczas tworzenia konta normalnego będzie przyznawany każdemu inny nr konta, podczas tworzenia normalnego klienta z danymi już ten nr konta będzie do klienta dołączany. Tylko nie wiem jak te 2 rzeczy ze sobą zesparować.

Ale odpowiadając na Twoje pytanie - tak, jest tożsama.

///EDIT
Wydaje mi się, że jest dobrze stworzyć nową tabelę. Chce mieć rózróżnienielogowania pomiędzy pracownikiem a normalnym użytkownikiem.
Coś na zasadzie user, password, access (0 to klient, 1 to pracownik) i w odróżnieniu od tego czy jest to 0 czy 1 wyświetla się inne menu.

1 użytkowników online, w tym zalogowanych: 0, gości: 1