Databaze – Java – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Databaze – Java – Fórum – Programujte.comDatabaze – Java – Fórum – Programujte.com

 

Kornin
~ Anonymní uživatel
15 příspěvků
8. 6. 2013   #1
-
0
-

Vubec nevim jak pracovat s databazi a potreboval bych ji pouzit.... To co je muj aktualni problem - jak tu databazi propojit s kodem v netbeans? 

Nahlásit jako SPAM
IP: 81.201.55.–
RomanZ
~ Anonymní uživatel
272 příspěvků
8. 6. 2013   #2
-
0
-

Googli JDBC.

Nahlásit jako SPAM
IP: 85.132.159.–
Kornin
~ Anonymní uživatel
15 příspěvků
8. 6. 2013   #3
-
0
-

Ok, nejdriv se zeptam jestli je vubec vhodny pouzit DB.

Chci naprogramovat jednoduchy task manager. Kde si zadam ukol, priotu (3 stupne) Boolean jestli je hotovej a datum.

Chtel bych aby to pak fungovalo tak, ze kdyz ho otevru (bude i s GUI) tak se mi tam hned nactou ukoly co uz sem tam nekdy vytvoril. Cili ukladani dat, cteni dat.

Napada me, ze by to slo udelat i normalnim ukladanim a ctenim ze souboru. Co myslite? Ma vubec smysl se ucit ty databaze...uz par dnu googlim a vubec to nejak nechapu. Nejde mi to nastavit. Tu praci s databazi uz bych zvladl, ale to pocatecni nastaveni a pripojeni vubec nechapu.

Nahlásit jako SPAM
IP: 81.201.55.–
sakal910
Stálý člen
8. 6. 2013   #4
-
0
-

#3 Kornin
Dalo by se to udělat i pomocí xml souboru, ale myslím že pro tebe bude lepší ta databáze... Dále je otázka, zda to chceš dělat přes klasickou databázi (MySQL,...) kde budeš potřebovat databázový server, nebo přes tzv. embedded databázi (nepotřebuješ databázový server, databáze se v podstatě ukládá do souboru)... V obou případech je práce s databází v podstatě stéjná... postup připojení k apache.derby (tato DB je součástí Netbeans):

public abstract class GeneralDAO {

    private final String DRIVER_CLASS = "org.apache.derby.jdbc.ClientDriver";
    private final String DB = "jdbc:derby://";
    private final String HOST = "localhost:1527";
    private final String DB_NAME = "nazev_databaze";
    private final String USER = "uzivatel";
    private final String PASSWORD = "heslo";

    protected Connection getConnection() {
        try {
            Class.forName(DRIVER_CLASS);
            try {
                return DriverManager.getConnection(DB + "" + HOST + "/" + DB_NAME, USER, PASSWORD);
            } catch (SQLException ex) {
                Logger.getLogger(GeneralDAO.class.getName()).log(Level.SEVERE, null, ex);
            }
        } catch (ClassNotFoundException ex) {
            Logger.getLogger(GeneralDAO.class.getName()).log(Level.SEVERE, null, ex);
        }

        return null;
    }
}

public class DAO extends GeneralDAO {

    public DAO() {
    }

    public void insert(Object data) {

        String sqlInsertPerson = "SQL DOTAZ";

        try (Connection con = getConnection(); Statement statement = con.createStatement();) {
            statement.execute(sqlInsertPerson);
        } catch (SQLException ex) {
            Logger.getLogger(PersonDAO.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
}

Samozřejmě toto je jen jednoduchá ukázka, mohl bys to mít v jedné třídě atd... Ten příklad co jsem tady dal funguje asi tak, že v abstraktní třídě (nelze z ní vytvořit instance) si definuješ metodu, ve které se připojíš k databázi a připojení vrátíš aby jsi s ním mohl dále pracovat... Pak jen třída DAO dědí od té GeneralDAO kde máš definovanou metodu pro připojení, a v té třídě DAO máš metody pro práci s DB... práce s DB se provádí v bloku try-catch, v tomto příkladu je použita JAVA 7, v 6 bys musel to Connection con = .... mít normálně uvnitř toho bloku try :) Psal jsem to na rychlo tak snad to je aspoň trochu pochopitelné a za případné chyby se omlouvám :) 

P.S: Databázi v Netbeansech doufám vytvořit umiš :) (když tak v záložce services :) )

Nahlásit jako SPAM
IP: 31.222.8.–
Kornin
~ Anonymní uživatel
15 příspěvků
8. 6. 2013   #5
-
0
-

Aha, díky moc. Mě by spíše vyhovovala na embedded databáze. Nechce se mi jeste resit apatche nebo se nekam pripojovat. Jak by se to tedy v uvodu lisilo ?

Zasláno z mobilního telefonu.

Nahlásit jako SPAM
IP: 107.6.95.–
sakal910
Stálý člen
8. 6. 2013   #6
-
0
-
Nahlásit jako SPAM
IP: 31.222.8.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 4 hosté

Podobná vlákna

Databáze — založil Tomáš

Databáze ? — založil Láďa

Databáze — založil Rider

Databáze — založil roman.jaros

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý