Java mysql problem

Java mysql problem

offline
  • Huskar
  • strukovni inzenjer elektrotehnike i racunarstva
  • Pridružio: 31 Maj 2008
  • Poruke: 877
  • Gde živiš: Kula

Postovani treba mi pomoc oko sljedeg zadatka:

Naziv: Baza biblioteka
Zadatak:
Kreirati MySQL bazu podataka Biblioteka, sa tabelama Knjige, Clanovi i Izdavanja.
Tabela Knjige treba da sadrži podatke Id, Naslov, Opis, Autor, Izdavač, GodinaIzdavanja.
Tabela Clanovi ima kolone Id, Ime, Prezime, MaticniBroj, DatumUclanjenja, Adresa, MestoStanovanja.
Tabela Izdavanja sadrži kolone Id, DatumIVremeIzdavanja, IdKnjige, IdClana, BrojDana.
Kreirati odgovarajuće klase - Knjiga, Clan i Izdavanje - koje imaju mogućnost manipulacije određenim tabelama unutar baze podataka.
Sve tri klase treba da sadrže atribute u kojima će se čuvati stanje pojedinačnih objekata. Atributi treba da odgovaraju tipu i nazivu kolona u tabelama.
Napraviti parametarske konstruktore za svaku klase. Uraditi Override metode toString() za ispis stanja objekta u tekstualnom obliku.
U svim klasama napisati metode za manipulaciju tabelama unutar baze podataka:
Metoda getAll treba iz baze da očita sve podatke, i vrati kolekciju objekata klase u kojoj se nalazi. Ova metoda treba da bude statička.
Metoda getById iz baze da očitava podatke na osnovu zadatog Id-a. Ima jedan argument tipa int, i vraća objekat odgovarajuće klase. Ova metoda je takođe klasna (statička).
Metoda insert upisuje vrednosti atributa novog objekta u bazu, update ažurira podatke, a delete briše podatke o objektu iz baze. Ove metode se pozivaju nad instancama klase, i nisu statičke. Nemaju ulazne argumente, i ne vraćaju nikakvu vrednost.
Sve izuzetke treba obraditi unutar metoda klasa pomoću try/catch blokova.
Napomena: Za uspešno urađen zadatak, potrebno je minimalno uraditi SQL skriptu i bar jednu klasu. Dostaviti arhivu koja sadrži NetBeans projekat i SQL skriptu.

nesto sam vec uradio pored baze koju sam uradio u mysql-u. posto sam pocetnik u javi malo sam se pogubio u kodu svaka pomoc bi mi dobro dosla.

code:

import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.util.ArrayList; public class Biblioteka { private int ID ; private String Naslov; private String Opis; private String Autor ; private String Izdavac; private int Godina; public Knjiga(int ID, String Naslov, String Opis, String Autor , String Izdavac, int Godina) { this.ID = ID; this.Naslov = Naslov; this.Opis = Opis; this.Autor = Autor; this.Izdavac = Izdavac; this.Godina = Godina; } public Knjiga() { } public boolean insert() { boolean povezivanjeUspjesno = false; Connection conn = null; try { try { Class.forName("com.mysql.jdbc.Driver").newInstance (); conn = DriverManager.getConnection("jdbc:mysql://localhost/biblioteka", "root", ""); String query = "insert into Knjiga (ID, Naslov, Opis, Autor, Izdavac, Godina) values (?,?,?,?,?,?)"; PreparedStatement preparedStmt = conn.prepareStatement(query); preparedStmt.setInt(1, this.ID); preparedStmt.setString(2, this.Naslov); preparedStmt.setInt(3, this.Opis); preparedStmt.setInt(4, this.Autor); preparedStmt.setInt(5, this.Izdavac); preparedStmt.setInt(6, this.Godina); povezivanjeUspjesno = preparedStmt.execute(); } finally { conn.close(); } } catch (Exception e) { } return povezivanjeUspjesno; } public boolean delete() { boolean povezivanjeUspjesno = false; Connection conn = null; try { try { Class.forName("com.mysql.jdbc.Driver").newInstance (); conn = DriverManager.getConnection("jdbc:mysql://localhost/biblioteka", "root", ""); String query = "delete from Knjiga where ID = ?"; PreparedStatement preparedStmt = conn.prepareStatement(query); preparedStmt.setInt(1, this.ID); povezivanjeUspjesno = preparedStmt.execute(); } finally { conn.close(); } } catch (Exception e) { } return povezivanjeUspjesno ; } public boolean update() { boolean povezivanjeUspjesno = false; Connection conn = null; try { try { Class.forName("com.mysql.jdbc.Driver").newInstance (); conn = DriverManager.getConnection("jdbc:mysql://localhost/biblioteka", "root", ""); String query = "update Knjiga set Naslov = ?, Opis = ?, Autor =?, Izdavac = ?, Godina = ? where productID = ?"; PreparedStatement preparedStmt = conn.prepareStatement(query); preparedStmt.setString(1, this.Naslov); preparedStmt.setInt(2, this.Opis); preparedStmt.setInt(3, this.Autor); preparedStmt.setInt(4, this.Izdavac); preparedStmt.setInt(5, this.Godina); preparedStmt.setInt(6, this.ID); povezivanjeUspjesno = preparedStmt.execute(); } finally { conn.close(); } } catch (Exception e) { } return povezivanjeUspjesno; } public static Knjiga getFromId(int id) { Proizvod retKnjiga = null; Connection conn = null; try { try { Class.forName("com.mysql.jdbc.Driver").newInstance (); conn = DriverManager.getConnection("jdbc:mysql://localhost/biblioteka", "root", ""); String query = "select ID, Naslov, Opis, Autor, Izdavac, Godina from Knjiga where productName = ?"; PreparedStatement preparedStmt = conn.prepareStatement(query); preparedStmt.setInt(1, id); ResultSet result = preparedStmt.executeQuery(); while (result.next()) { int kID = result.getInt("ID"); int Godina = result.getInt("Godina"); String Naslov=result.getString("Naslov"); String Autor=result.getString("Autor"); String Opis=result.getString("Opis"); String Izdavac=result.getString("Izdavac"); retKnjiga = new Knjiga(kID, Naslov, Autor, Opis, Izdavac, Godina); } } finally { conn.close(); } } catch (Exception e) { } return retKnjiga; } public static ArrayList<Knjiga> getAll() { ArrayList<Knjiga> retKnjiga = new ArrayList<Knjiga>(); Connection conn = null; try { try { Class.forName("com.mysql.jdbc.Driver").newInstance (); conn = DriverManager.getConnection("jdbc:mysql://localhost/biblioteka", "root", ""); String query = "select ID, Naslov, Autor, Opis, Izdavac, Godina from Knjiga"; PreparedStatement preparedStmt = conn.prepareStatement(query); ResultSet result = preparedStmt.executeQuery(); while (result.next()) { int kID = result.getInt("ID"); int Godina = result.getInt("Godina"); String Naslov=result.getString("Naslov"); String Autor=result.getString("Autor"); String Opis=result.getString("Opis"); String Izdavac=result.getString("Izdavac"); retKnjiga.add(k); } } finally { conn.close(); } } catch (Exception e) { } return retKnjiga; } }

U netbeans-u 6.8 mi ne prijavljuje nikakvu gresku u kodu ali jednostavno ne funkcionise



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 28 Maj 2006
  • Poruke: 1536
  • Gde živiš: Seven holy paths to hell

conn = DriverManager.getConnection("jdbc:mysql://localhost/biblioteka", "root", "");

Imas stavljenu sifru u mysql DB? I takodje jedan savet, ne koristi root-a.

String query = "select ID, Naslov, Autor, Opis, Izdavac, Godina from Knjiga";

Sta je k u metodi getAll - zbog toga nemas nista u <arrayList>retKnjiga?
retKnjiga.add(k);
Takodje kad hoces da vrati sve iz db.table onda je dovoljno ispistati "*" npr:
String query = "select * from Knjiga";

Delete, insert su napravljeni kao "boolean" i bez argumenta??
Gde je class Knjiga, Proizvod?



Ko je trenutno na forumu
 

Ukupno su 630 korisnika na forumu :: 42 registrovanih, 4 sakrivenih i 584 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 1567 - dana 15 Jul 2016 19:18

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: 037, _Petar, _zoni_, A.R.Chafee.Jr., arsa2, baza, bojank2, Buzdovan2, darkangel2, darkstar101, doktor1964, Faki-Valjevo, Filip Marinković, Filodendron, havoc995, Kos93, Kubovac, kunktator, Marko Marković2, Matija2, matorigile, Mihajlo, misa1xx, Mixelotti, Perko91, repac, RJ, Roman, rovac, ruseskij, sakota79, sasa.zoric, sasakrajina, Srki94, Srna2, versus, vespa nikola, vladaa012, White Knight, zodiac94, zoranis, zox-ni