szd.DB
Class DB

java.lang.Object
  extended by szd.DB.DB

public class DB
extends java.lang.Object

A játék használata során elért eredmények kezelésére szolgáló osztály. JDBC kapcsolaton keresztül Apache Derby drivert használva egy lokális adatbázisban tárolunk minden eredményt. Az osztály nem példányosítható, nincsen egyetlen konstruktora sem, minden metódusa statikusan használható.

Author:
Hucker Dávid

Field Summary
private static java.sql.PreparedStatement addPlayer
          Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement
private static java.sql.Connection dbConnection
          Az adatbázis kapcsolatunk.
private static java.sql.PreparedStatement deleteDB
          Az adatbázist törlő PreparedStatement
private static java.sql.PreparedStatement getDB
          Az adatbázist lekérő PreparedStatement
private static java.sql.PreparedStatement getPlayerRecord
          Az adatbázisból egy játékost lekérő PreparedStatement
private static java.lang.String strUrl
          A kapcsolathoz használt driver.
private static java.sql.PreparedStatement updateOnePlayerGamesBeginnerDifficultPlayed
          Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement
private static java.sql.PreparedStatement updateOnePlayerGamesBeginnerDifficultWon
          Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement
private static java.sql.PreparedStatement updateOnePlayerGamesHardDifficultPlayed
          Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement
private static java.sql.PreparedStatement updateOnePlayerGamesHardDifficultWon
          Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement
private static java.sql.PreparedStatement updateOnePlayerGamesNormalDifficultPlayed
          Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement
private static java.sql.PreparedStatement updateOnePlayerGamesNormalDifficultWon
          Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement
private static java.sql.PreparedStatement updateOnePlayerGamesProfessionalDifficultPlayed
          Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement
private static java.sql.PreparedStatement updateOnePlayerGamesProfessionalDifficultWon
          Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement
private static java.sql.PreparedStatement updateTwoPlayerGamesPlayed
          Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement
private static java.sql.PreparedStatement updateTwoPlayerGamesWon
          Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement
 
Constructor Summary
DB()
           
 
Method Summary
static boolean addPlayer(Player p)
          Hozzáad egy új játékost az adatbázishoz.
static boolean addPlayer(java.lang.String name)
          Hozzáad egy játékost az adatbázishoz.
static boolean createStatsTable()
          Ha kell létrehozza az adatot tárolásához szükséges táblát.
private static boolean createTables()
          Létrehozza az adatok tárolásához szükséges táblát.
static boolean dropStatsTable()
          Törli az adatokat tartalmazó táblát.
static Player getPlayerStats(java.lang.String name)
          Visszaadja egy játékos rekortját reprezentáló osztály egy példányát az adatbázisból kinyert adatokkal feltölte
private static int getRowCount()
          Visszaadja az adatbázisban szereplő sorok számát.
static boolean initDB()
          Az adatbázist inicializáló metódus
static void main(java.lang.String[] args)
           
static boolean playedOnePlayerGame(java.lang.String name, java.lang.String outcome, java.lang.String difficult)
          Egy egyszemélyes játék után frissíti az adatbázisban lévő adatokat.
static boolean playedTwoPlayerGame(java.lang.String name1, java.lang.String outcome1, java.lang.String name2, java.lang.String outcome2)
          Egy kétszemélyes játék után frissíti az adatbázisban lévő adatokat.
static boolean printPlayerStats(java.lang.String name)
          Kiírja egy játékosokhoz tartozó adatokat, inkább teszt jellegű
private static void setDBSystemDir()
           
static void showDataBase()
          Kirajzolja az adatbázist, inkább teszt funkció
private static void wonOnePlayerGame(java.lang.String name, java.lang.String difficult)
          Egyszemélyes játék során ha a játékos nyert akkor frissíti a megfelelő mezők értékét.
private static void wonTwoPlayerGame(java.lang.String name)
          Kétszemélyes játék során a nyertes játékos megfelelő mezőjének frissíti az értékét.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

dbConnection

private static java.sql.Connection dbConnection
Az adatbázis kapcsolatunk.


strUrl

private static java.lang.String strUrl
A kapcsolathoz használt driver.


getDB

private static java.sql.PreparedStatement getDB
Az adatbázist lekérő PreparedStatement


deleteDB

private static java.sql.PreparedStatement deleteDB
Az adatbázist törlő PreparedStatement


getPlayerRecord

private static java.sql.PreparedStatement getPlayerRecord
Az adatbázisból egy játékost lekérő PreparedStatement


updateOnePlayerGamesBeginnerDifficultPlayed

private static java.sql.PreparedStatement updateOnePlayerGamesBeginnerDifficultPlayed
Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement


updateOnePlayerGamesBeginnerDifficultWon

private static java.sql.PreparedStatement updateOnePlayerGamesBeginnerDifficultWon
Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement


updateOnePlayerGamesNormalDifficultPlayed

private static java.sql.PreparedStatement updateOnePlayerGamesNormalDifficultPlayed
Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement


updateOnePlayerGamesNormalDifficultWon

private static java.sql.PreparedStatement updateOnePlayerGamesNormalDifficultWon
Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement


updateOnePlayerGamesHardDifficultPlayed

private static java.sql.PreparedStatement updateOnePlayerGamesHardDifficultPlayed
Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement


updateOnePlayerGamesHardDifficultWon

private static java.sql.PreparedStatement updateOnePlayerGamesHardDifficultWon
Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement


updateOnePlayerGamesProfessionalDifficultPlayed

private static java.sql.PreparedStatement updateOnePlayerGamesProfessionalDifficultPlayed
Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement


updateOnePlayerGamesProfessionalDifficultWon

private static java.sql.PreparedStatement updateOnePlayerGamesProfessionalDifficultWon
Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement


updateTwoPlayerGamesPlayed

private static java.sql.PreparedStatement updateTwoPlayerGamesPlayed
Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement


updateTwoPlayerGamesWon

private static java.sql.PreparedStatement updateTwoPlayerGamesWon
Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement


addPlayer

private static java.sql.PreparedStatement addPlayer
Egy, az adatbázis egy rekordjának bizonyos mezőjét módosító PreparedStatement

Constructor Detail

DB

public DB()
Method Detail

showDataBase

public static void showDataBase()
Kirajzolja az adatbázist, inkább teszt funkció


initDB

public static boolean initDB()
Az adatbázist inicializáló metódus

Returns:
true ha sikerült elérni az adatbázist, false ha nem

createStatsTable

public static boolean createStatsTable()
Ha kell létrehozza az adatot tárolásához szükséges táblát.

Returns:
true ha sikerült létrehozni a táblát, false ha nem sikerült a táblát létrehozni mert az már létezett

dropStatsTable

public static boolean dropStatsTable()
Törli az adatokat tartalmazó táblát.

Returns:
true ha sikerült törölni a táblát false ha nem

main

public static void main(java.lang.String[] args)

getPlayerStats

public static Player getPlayerStats(java.lang.String name)
Visszaadja egy játékos rekortját reprezentáló osztály egy példányát az adatbázisból kinyert adatokkal feltölte

Parameters:
name - A keresett játékos neve
Returns:
Az adott nevű játékos adatait tartalmazó Player osztály egy példánya

playedOnePlayerGame

public static boolean playedOnePlayerGame(java.lang.String name,
                                          java.lang.String outcome,
                                          java.lang.String difficult)
Egy egyszemélyes játék után frissíti az adatbázisban lévő adatokat. Az aktuális játékos rekordjához tartozó megfelelő mezőket frissíti a játék kimenetelének és a nehézségnek megfelelően.

Parameters:
name - A játékos neve
outcome - A játék kimenetele
difficult - A játék nehézségi szintje
Returns:
true ha sikerült frissíteni az adatbázist, false ha nem

wonOnePlayerGame

private static void wonOnePlayerGame(java.lang.String name,
                                     java.lang.String difficult)
                              throws java.sql.SQLException
Egyszemélyes játék során ha a játékos nyert akkor frissíti a megfelelő mezők értékét.

Parameters:
name - A játékos neve
difficult - A játék nehézségi szintje
Throws:
java.sql.SQLException

playedTwoPlayerGame

public static boolean playedTwoPlayerGame(java.lang.String name1,
                                          java.lang.String outcome1,
                                          java.lang.String name2,
                                          java.lang.String outcome2)
Egy kétszemélyes játék után frissíti az adatbázisban lévő adatokat. Az aktuális játékosok rekordjához tartozó megfelelő mezőket frissíti a játék kimenetelének és a nehézségnek megfelelően.

Parameters:
name1 - Az első játékos neve
outcome1 - Az első játékos számára a játék kimenetele
name2 - A második játékos neve
outcome2 - A második játékos számára a játék kimenetele
Returns:
true ha sikerült frissíteni az adatbázisban lévő adatokat, false ha nem

wonTwoPlayerGame

private static void wonTwoPlayerGame(java.lang.String name)
                              throws java.sql.SQLException
Kétszemélyes játék során a nyertes játékos megfelelő mezőjének frissíti az értékét.

Parameters:
name - A játékos neve
Throws:
java.sql.SQLException

printPlayerStats

public static boolean printPlayerStats(java.lang.String name)
Kiírja egy játékosokhoz tartozó adatokat, inkább teszt jellegű

Parameters:
name - Játékos neve
Returns:
true ha sikerült frissíteni az adatbázisban lévő adatokat, false ha nem

addPlayer

public static boolean addPlayer(java.lang.String name)
Hozzáad egy játékost az adatbázishoz.

Parameters:
name - Az új játékos neve
Returns:
true ha sikerült frissíteni az adatbázisban lévő adatokat, false ha nem

addPlayer

public static boolean addPlayer(Player p)
Hozzáad egy új játékost az adatbázishoz.

Parameters:
p - Az új játékos, a Player osztály egy példánya
Returns:
true ha sikerült frissíteni az adatbázisban lévő adatokat, false ha nem

getRowCount

private static int getRowCount()
                        throws java.sql.SQLException
Visszaadja az adatbázisban szereplő sorok számát.

Returns:
A sorok száma
Throws:
java.sql.SQLException

setDBSystemDir

private static void setDBSystemDir()

createTables

private static boolean createTables()
Létrehozza az adatok tárolásához szükséges táblát.

Returns:
true ha sikerült frissíteni az adatbázisban lévő adatokat, false ha nem