Skip to content

Commandes

10 classes 3 interfaces with interface implementation, inheritance, association

classDiagram
    class Adresse {
        -String id
        -String street
        -String postCode
        -String city
    }
    class Product {
        -String id
        -String name
        -double price
        -String description
        -int stock
    }
    class GenericDAO_TK_ {
        +findAll(ArrayList<T>)
        +findById(id K) T
        +update(T entity)
        +delete(T entity)
        +deleteByKey(K id)
        +create(T entity)
    }
    class DVDDao {
        +findByMinRate(int rate)
    }
    class DVD {
        +int chapters
        +int rate
    }
    class BookDaoImpl {
    }
    class BookDao {
        +findByNumberOfPages(int min, int max)
    }
    class DVDDaoImpl {
    }
    class Book {
        +int pages
    }
    class Command {
        -long id
        -Date date
    }
    class CommandLine {
        +String id
        -int quantity
    }
    class Client {
        -String firstname
        -String lastname
        -String email
    }
    class Login {
        -String Id
        -String login
        -String password
    }
    Client "1" --> "1" Login
    Adresse "0..*" --> "1..*" Client
    Command "0..*" --> "1" Adresse
    Command "0..*" --> "1" Adresse
    Command "1" --> "0..*" CommandLine
    CommandLine "0..*" --> "1" Product
    DVD --|> Product
    Book --|> Product
    DVDDaoImpl ..|> DVDDao
    BookDaoImpl ..|> BookDao
    DVDDao --|> GenericDAO_TK_
    BookDao --|> GenericDAO_TK_