Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //@require JDBC drajver
- import java.sql.*;
- import java.util.HashSet;
- import java.util.Set;
- public class FirstTimeJDBC {
- public static void main(String[] args) {
- try(java.util.Scanner unos = new java.util.Scanner(System.in)){
- System.out.println("1 . Pogledaj sve drzave | 2 . trazi drzavu");
- int odabir = unos.nextInt();
- if(odabir == 1)
- ispisDrzava();
- else if(odabir == 2){
- System.out.println("1. Trazi po imenu 2. Trazi po broju stanovnika");
- odabir = unos.nextInt();
- if(odabir == 1){
- System.out.println("Unesite ime drzave ");
- Set<Drzava> db = DrzavaDB.getInstanca().getDrzava(unos.next());
- System.out.printf("\n%s",(db.size()>0)?db.toString():"Nista nije pronadjeno");
- }
- else if(odabir == 2){
- System.out.println("Unesite broj stanovnika ");
- Set<Drzava> db = DrzavaDB.getInstanca().getDrzava(unos.nextInt());
- System.out.printf("\n%s",(db.size()>0)?db.toString():"Nista nije pronadjeno");
- }else{
- System.exit(0);
- }
- }
- else
- System.exit(0);
- }catch(SQLException e){
- e.printStackTrace();
- }
- catch (java.util.InputMismatchException e) {
- System.err.println("Pogresan unos");
- }
- catch(Exception e){
- e.printStackTrace();
- }
- }
- /**
- * Ispisuje sve drzave iz baze
- * @throws Exception
- */
- public static void ispisDrzava() throws Exception{
- Set<Drzava> dbDr = DrzavaDB.getInstanca().getSveDrzave();
- for (Drzava drz : dbDr) {
- System.out.println(drz);
- }
- }
- }
- class Drzava{
- private String ime;
- private String region;
- private long brojStanovnika;
- private String kontinent;
- public Drzava(String ime, String region, long brojStanovnika, String kontinent) {
- this.ime = ime;
- this.region = region;
- this.brojStanovnika = brojStanovnika;
- this.kontinent = kontinent;
- }
- @Override
- public String toString() {
- return "Ime : " + ime + ", regija : " + region + ", broj stanovnika : " + brojStanovnika + ", kontinent : "
- + kontinent;
- }
- }
- class DrzavaDB{
- //ovo bi trebalo bit u fajlu
- private String DB_USER = "root";
- private String DB_PASS = "root";
- private String DB_LINK = "jdbc:mysql://localhost/world";
- private static DrzavaDB instanca = null;
- private Connection con;
- private DrzavaDB () throws Exception {
- con = DriverManager.getConnection(DB_LINK,DB_USER,DB_PASS);
- //System.out.println("Succses");
- }
- public static DrzavaDB getInstanca() throws Exception{
- if(instanca == null){
- instanca = new DrzavaDB();
- }
- return instanca;
- }
- //pokupi sve drzave
- public Set<Drzava> getSveDrzave(){
- HashSet<Drzava> dr = new HashSet<>();
- try(Statement st = con.createStatement()){
- ResultSet rezultat = st.executeQuery("select * from country");
- while(rezultat.next()){
- dr.add(new Drzava(rezultat.getString("Name"),
- rezultat.getString("Region"),
- rezultat.getInt("Population"),
- rezultat.getString("Continent")));
- }
- return dr;
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return null;
- }
- //get po prosljedjenoj vrijednosti
- public Set<Drzava> getDrzava(String ime){
- HashSet<Drzava> dr = new HashSet<>();
- try(Statement st = con.createStatement()){
- ResultSet rezultat = st.executeQuery("select * from country where Name like '%"+ime+"%';");
- while(rezultat.next()){
- dr.add(new Drzava(rezultat.getString("Name"),
- rezultat.getString("Region"),
- rezultat.getInt("Population"),
- rezultat.getString("Continent")));
- }
- return dr;
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return null;
- }
- public Set<Drzava> getDrzava(int popul){
- HashSet<Drzava> dr = new HashSet<>();
- try(Statement st = con.createStatement()){
- ResultSet rezultat = st.executeQuery("select * from country where Population ="+popul+";");
- while(rezultat.next()){
- dr.add(new Drzava(rezultat.getString("Name"),
- rezultat.getString("Region"),
- rezultat.getInt("Population"),
- rezultat.getString("Continent")));
- }
- return dr;
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return null;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement