@startuml package com.iluwatar.serializedentity { class App { - DB_URL : String {static} - LOGGER : Logger {static} - App() - createDataSource() : DataSource {static} - createSchema(dataSource : DataSource) {static} - deleteSchema(dataSource : DataSource) {static} + main(args : String[]) {static} } class Country { - code : int - continents : String - language : String - name : String + serialVersionUID : long {static} + Country(code : int, name : String, continents : String, language : String) # canEqual(other : Object) : boolean + equals(o : Object) : boolean + getCode() : int + getContinents() : String + getLanguage() : String + getName() : String + hashCode() : int + setCode(code : int) + setContinents(continents : String) + setLanguage(language : String) + setName(name : String) + toString() : String } interface CountryDao { + insertCountry() : int {abstract} + selectCountry() : int {abstract} } class CountrySchemaSql { + CREATE_SCHEMA_SQL : String {static} + DELETE_SCHEMA_SQL : String {static} - LOGGER : Logger {static} - country : Country - dataSource : DataSource + CountrySchemaSql(country : Country, dataSource : DataSource) + insertCountry() : int + selectCountry() : int } } CountrySchemaSql --> "-country" Country CountrySchemaSql ..|> CountryDao @enduml