/*andmebaasiga seotud funktsioonid*/ package punktid; import punktid.*; import java.sql.*; import java.util.*; import java.io.Serializable; public class Baas implements Serializable{ Connection cn; Statement st; String uname=""; public Baas(){ try{ Class.forName("org.gjt.mm.mysql.Driver"); cn=DriverManager.getConnection("jdbc:mysql:/localhost/punktid", "root", "*******"); st=cn.createStatement(); }catch(Exception e){ System.out.println(e); } } /*funktsioon punkti lisamiseks (samal ajal loetakse ka mitu punkti ykski kasutaja on lisanud)*/ public void lisaPunkt(String nimi,String kirjeldus, int x, int y, String lisaja)throws SQLException{ String lause="insert into punktid (nimi,kirjeldus,x,y) values ('"+nimi+"','"+kirjeldus+"',"+x+","+y+");"; st.executeUpdate(lause); lause = "select * from kasutajad where username='"+lisaja+"';"; ResultSet rs=st.executeQuery(lause); if (rs.next()){ st.executeUpdate("update kasutajad set count=count+1 where username='"+lisaja+"';"); }else{ st.executeUpdate("insert into kasutajad (username) values('"+lisaja+"');"); } } /*tagastab top 10 lisajate tabeli */ public String top10() throws SQLException{ String sReturn = ""; String lause = "select * from kasutajad order by count desc;"; ResultSet rs = st.executeQuery(lause); for(int i=0; i<10; i++){ if (rs.next()){ sReturn = sReturn + ""; } } sReturn = sReturn + "
KasutajaPunkte
"+rs.getString("username")+""+rs.getInt("count")+"
"; return sReturn; } /* lisab kommentaari punkti kohta */ public void lisaKommentaar(int punkti_id, String kommentaar, String lisaja)throws SQLException{ String lause="insert into kommentaarid (punkti_id,kommentaar,lisaja) values ("+punkti_id+",'"+kommentaar+"','"+lisaja+"');"; st.executeUpdate(lause); } /*näitab lisatud punkte tabeli kujul*/ public String punktidTabelisse()throws SQLException{ String tabel=""; String lause="SELECT * FROM punktid;"; ResultSet rs=st.executeQuery(lause); tabel=tabel+(""); while(rs.next()){ tabel=tabel+(""); } tabel=tabel+("
Punktid
NimiKirjeldus 
"+rs.getString("nimi")+""+rs.getString("kirjeldus")+"Vaata
"); return tabel; } /*esitab mobiilile punkte kirjelduse ja koordinaadiga kirjed eraldatakse ";" abil ja kirje osad ":" abil */ public String mobiil() throws SQLException{ String sReturn = ""; String lause = "select * from punktid;"; ResultSet rs = st.executeQuery(lause); while (rs.next()){ sReturn = sReturn+rs.getString("nimi")+":"+rs.getString("kirjeldus")+":"+rs.getInt("x")+":"+rs.getInt("y")+":;"; } return sReturn; } /* esitab konkreetse punkti kohta nime kirjeldust koordinaate asukohta kaardil ja lisatud kommentaare*/ public String punkt(int id)throws SQLException{ String tabel=""; String lause="SELECT * FROM punktid where id="+id+";"; ResultSet rs=st.executeQuery(lause); tabel=tabel+(""); while(rs.next()){ tabel=tabel+(""); } tabel=tabel+(""); lause="SELECT lisaja,kommentaar FROM kommentaarid where punkti_id="+id+";"; rs=st.executeQuery(lause); while (rs.next()){ tabel=tabel+(""); } tabel=tabel+("
NimiKirjeldusXY
"+rs.getString("nimi")+""+rs.getString("kirjeldus")+""+rs.getInt("X")+""+rs.getInt("Y")+"
"+rs.getString("lisaja")+""+rs.getString("kommentaar")+"
"); return tabel; } /* esitab kogu baasi yhe vektori kujul XML-i kirjutajale*/ public Vector baasiSisu () throws SQLException { Vector vReturn = new Vector(); Vector kasutajad = new Vector(); Vector kommentaarid = new Vector(); Vector punktid = new Vector(); String lause; ResultSet rs; vReturn.addElement(kasutajad); vReturn.addElement(kommentaarid); vReturn.addElement(punktid); lause = "Select * from kasutajad;"; rs = st.executeQuery(lause); while (rs.next()){ String[] kirje =new String[3]; kirje[0] = Integer.toString(rs.getInt("id")); kirje[1] = rs.getString("username"); kirje[2] = Integer.toString(rs.getInt("count")); kasutajad.addElement(kirje); } lause = "Select * from kommentaarid;"; rs = st.executeQuery(lause); while (rs.next()){ String[] kirje =new String[4]; kirje[0] = Integer.toString(rs.getInt("id")); kirje[1] = Integer.toString(rs.getInt("punkti_id")); kirje[2] = rs.getString("kommentaar"); kirje[3] = rs.getString("lisaja"); kommentaarid.addElement(kirje); } lause = "Select * from punktid;"; rs = st.executeQuery(lause); while (rs.next()){ String[] kirje =new String[5]; kirje[0] = Integer.toString(rs.getInt("id")); kirje[1] = rs.getString("nimi"); kirje[2] = rs.getString("kirjeldus"); kirje[3] = Integer.toString(rs.getInt("x")); kirje[4] = Integer.toString(rs.getInt("y")); punktid.addElement(kirje); } return vReturn; } }