From 69dafbbf40dc2651b79f821f6a1cf2ade367d5af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Boris=20Bab=C4=8D=C3=A1k?= <boris.babcak@kosickaakademia.sk> Date: Fri, 9 Feb 2024 12:36:24 +0100 Subject: [PATCH] addec class city --- CountryJSON | 2 +- src/main/java/sk/kasv/babcak/worldx/City.java | 19 +++++++++++++++++++ .../java/sk/kasv/babcak/worldx/Country.java | 10 +++++----- .../java/sk/kasv/babcak/worldx/DataBase.java | 9 ++++++--- .../java/sk/kasv/babcak/worldx/WorldApp.java | 2 +- .../sk/kasv/babcak/worldx/WriterJSON.java | 4 ++-- 6 files changed, 34 insertions(+), 12 deletions(-) create mode 100644 src/main/java/sk/kasv/babcak/worldx/City.java diff --git a/CountryJSON b/CountryJSON index 034779e..46f15c2 100644 --- a/CountryJSON +++ b/CountryJSON @@ -1 +1 @@ -{"date":"2024-02-08","code3":"TUR","code2":"TR","name":"Turkey","capitalCity":"Ankara","citites":["Istanbul","Ankara","Izmir","Adana","Bursa","Gaziantep","Konya","Mersin (Içel)","Antalya","Diyarbakir","Kayseri","Eskisehir","Sanliurfa","Samsun","Malatya","Gebze","Denizli","Sivas","Erzurum","Tarsus","Kahramanmaras","Elâzig","Van","Sultanbeyli","Izmit (Kocaeli)","Manisa","Batman","Balikesir","Sakarya (Adapazari)","Iskenderun","Osmaniye","Çorum","Kütahya","Hatay (Antakya)","Kirikkale","Adiyaman","Trabzon","Ordu","Aydin","Usak","Edirne","Çorlu","Isparta","Karabük","Kilis","Alanya","Kiziltepe","Zonguldak","Siirt","Viransehir","Tekirdag","Karaman","Afyon","Aksaray","Ceyhan","Erzincan","Bismil","Nazilli","Tokat","Kars","Inegöl","Bandirma"]} \ No newline at end of file +{"date":"2024-02-09","code3":"TUR","code2":"TR","cities":["sk.kasv.babcak.worldx.City@548e6d58","sk.kasv.babcak.worldx.City@623a8092","sk.kasv.babcak.worldx.City@a1cdc6d","sk.kasv.babcak.worldx.City@175b9425","sk.kasv.babcak.worldx.City@3098cf3b","sk.kasv.babcak.worldx.City@610f7aa","sk.kasv.babcak.worldx.City@6a03bcb1","sk.kasv.babcak.worldx.City@21b2e768","sk.kasv.babcak.worldx.City@57250572","sk.kasv.babcak.worldx.City@5609159b","sk.kasv.babcak.worldx.City@2118cddf","sk.kasv.babcak.worldx.City@17a7f733","sk.kasv.babcak.worldx.City@68567e20","sk.kasv.babcak.worldx.City@76ed1b7c","sk.kasv.babcak.worldx.City@11fc564b","sk.kasv.babcak.worldx.City@394a2528","sk.kasv.babcak.worldx.City@6236eb5f","sk.kasv.babcak.worldx.City@7c1e2a9e","sk.kasv.babcak.worldx.City@fa36558","sk.kasv.babcak.worldx.City@672872e1","sk.kasv.babcak.worldx.City@32910148","sk.kasv.babcak.worldx.City@3f56875e","sk.kasv.babcak.worldx.City@2b4bac49","sk.kasv.babcak.worldx.City@fd07cbb","sk.kasv.babcak.worldx.City@3571b748","sk.kasv.babcak.worldx.City@3e96bacf","sk.kasv.babcak.worldx.City@484970b0","sk.kasv.babcak.worldx.City@4470f8a6","sk.kasv.babcak.worldx.City@7c83dc97","sk.kasv.babcak.worldx.City@7748410a","sk.kasv.babcak.worldx.City@740773a3","sk.kasv.babcak.worldx.City@37f1104d","sk.kasv.babcak.worldx.City@55740540","sk.kasv.babcak.worldx.City@60015ef5","sk.kasv.babcak.worldx.City@2f54a33d","sk.kasv.babcak.worldx.City@1018bde2","sk.kasv.babcak.worldx.City@65b3f4a4","sk.kasv.babcak.worldx.City@f2ff811","sk.kasv.babcak.worldx.City@568ff82","sk.kasv.babcak.worldx.City@50caa560","sk.kasv.babcak.worldx.City@2a266d09","sk.kasv.babcak.worldx.City@5ab9e72c","sk.kasv.babcak.worldx.City@186f8716","sk.kasv.babcak.worldx.City@1d8bd0de","sk.kasv.babcak.worldx.City@45ca843","sk.kasv.babcak.worldx.City@11c9af63","sk.kasv.babcak.worldx.City@757acd7b","sk.kasv.babcak.worldx.City@36b4fe2a","sk.kasv.babcak.worldx.City@574b560f","sk.kasv.babcak.worldx.City@ba54932","sk.kasv.babcak.worldx.City@28975c28","sk.kasv.babcak.worldx.City@3943a2be","sk.kasv.babcak.worldx.City@343570b7","sk.kasv.babcak.worldx.City@157853da","sk.kasv.babcak.worldx.City@71c3b41","sk.kasv.babcak.worldx.City@236e3f4e","sk.kasv.babcak.worldx.City@3cc1435c","sk.kasv.babcak.worldx.City@6bf0219d","sk.kasv.babcak.worldx.City@dd0c991","sk.kasv.babcak.worldx.City@5f16132a","sk.kasv.babcak.worldx.City@69fb6037","sk.kasv.babcak.worldx.City@36d585c"],"name":"Turkey","capitalCity":"Ankara"} \ No newline at end of file diff --git a/src/main/java/sk/kasv/babcak/worldx/City.java b/src/main/java/sk/kasv/babcak/worldx/City.java new file mode 100644 index 0000000..069095d --- /dev/null +++ b/src/main/java/sk/kasv/babcak/worldx/City.java @@ -0,0 +1,19 @@ +package sk.kasv.babcak.worldx; + +public class City { + private String name; + private int population; + + public City(String name, int population) { + this.name = name; + this.population = population; + } + + public String getName() { + return name; + } + + public int getPopulation() { + return population; + } +} diff --git a/src/main/java/sk/kasv/babcak/worldx/Country.java b/src/main/java/sk/kasv/babcak/worldx/Country.java index 5b86403..31d1326 100644 --- a/src/main/java/sk/kasv/babcak/worldx/Country.java +++ b/src/main/java/sk/kasv/babcak/worldx/Country.java @@ -8,7 +8,7 @@ public class Country { private String code2; private String code3; private String capital; - List<String> list = new ArrayList<>(); + List<City> list = new ArrayList<>(); public String getName() { return name; @@ -42,11 +42,11 @@ public class Country { this.capital = capital; } - public List<String> getList() { + public List<City> getList() { return list; } - public void setList(List<String> list) { + public void setList(List<City> list) { this.list = list; } @@ -59,8 +59,8 @@ public class Country { System.out.println("<----------------------------------->"); System.out.println("Country: "+name+" | "+"Code 2: "+code2+" | "+"Code 3: "+code3+" | "+"Capital: "+capital); System.out.println("List of cities: "+list.size()); - for(String text:list){ - System.out.println("> " + text); + for(City city:list){ + System.out.println("> " + city.getName()+ " "+city.getPopulation()); } System.out.println("<----------------------------------->"); } diff --git a/src/main/java/sk/kasv/babcak/worldx/DataBase.java b/src/main/java/sk/kasv/babcak/worldx/DataBase.java index df9f7da..70d1025 100644 --- a/src/main/java/sk/kasv/babcak/worldx/DataBase.java +++ b/src/main/java/sk/kasv/babcak/worldx/DataBase.java @@ -8,7 +8,8 @@ public class DataBase { private static final String URL = "jdbc:mysql://localhost:3306/world_x"; private static final String USER = "root"; private static final String PASSWORD = ""; - private static final String SELECT_CITIES = "SELECT Country.Name, City.name, Country.Code2" + + private static final String SELECT_CITIES = + "SELECT Country.Name, City.name, Country.Code2, Info->>\"$.Population\" Population" + " FROM City INNER JOIN country ON City.CountryCode = Country.Code" + " WHERE Country.Code LIKE ?"; private static final String SELECT_CAPITAL = "SELECT City.name, Country.Code" + @@ -30,7 +31,7 @@ public class DataBase { } private static void printCities(Connection conn, String code, Country country) throws SQLException { - List<String> cities = new ArrayList<>(); + List<City> cities = new ArrayList<>(); PreparedStatement ps = conn.prepareStatement(SELECT_CITIES); ps.setString(1, code); @@ -40,9 +41,11 @@ public class DataBase { while (rs.next()) { countryName = rs.getString("Country.Name"); - String city = rs.getString("City.Name"); + String cityName = rs.getString("City.Name"); code2 = rs.getString("Country.Code2"); + int pop = rs.getInt("Population"); + City city = new City(cityName,0); cities.add(city); } country.setList(cities); diff --git a/src/main/java/sk/kasv/babcak/worldx/WorldApp.java b/src/main/java/sk/kasv/babcak/worldx/WorldApp.java index b49cf92..cd87d9a 100644 --- a/src/main/java/sk/kasv/babcak/worldx/WorldApp.java +++ b/src/main/java/sk/kasv/babcak/worldx/WorldApp.java @@ -3,8 +3,8 @@ public class WorldApp { public static void main(String[] args) { DataBase db = new DataBase(); - Country country = db.getCountry("TUR"); WriterJSON writerJSON = new WriterJSON(); + Country country = db.getCountry("TUR"); writerJSON.createJSONdocument("CountryJSON", country); country.printCity(); } diff --git a/src/main/java/sk/kasv/babcak/worldx/WriterJSON.java b/src/main/java/sk/kasv/babcak/worldx/WriterJSON.java index bddcbfc..5b3aa32 100644 --- a/src/main/java/sk/kasv/babcak/worldx/WriterJSON.java +++ b/src/main/java/sk/kasv/babcak/worldx/WriterJSON.java @@ -28,10 +28,10 @@ public class WriterJSON { object.put("code3", country.getCode3()); object.put("capitalCity", country.getCapital()); JSONArray jsonArray = new JSONArray(); - for(String city: country.getList()){ + for(City city: country.getList()){ jsonArray.put(city); } - object.put("citites",jsonArray); + object.put("cities",jsonArray); object.put("date", Util.getDate()); System.out.println(object.toString()); -- GitLab