# Java Connection to MySQL Datenbank FunPic



## SirBaros (19. Mrz 2011)

Hallo, ich habe eine FunPic MySQL Datenbank in der ich Daten mit einem Applet reinschreiben möchte. Im Anhang habe ich den Code zur Verbindung zur Datenbank angegeben, die jedoch fehlerhaft ist. Bitte um Hilfe. Wie musst die Verbindung lauten? Mann kann nur localhost die Verbindung aufbauen. Vielleicht hat ja jemand Erfahrung mit FunPic


```
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/unsernameVonFunPic");
```


----------



## XHelp (20. Mrz 2011)

Sieh doch in der FunPic FAQ ob sowas überhaupt möglich ist. Vllt erlauben die keinen Zugriff von außen.
Aber localhost ist auf jeden Fall verkehrt, da es so rein gar nichts mit funpic zu tun hat :bahnhof:
Und du solltest dir auch überlegen die Datenbanksachen erst gar nicht im Applet zu machen.


----------



## Java Freak 3000 (20. Mrz 2011)

Hallo,
Ich bin ein neuer user,aber ich kann schon Java ein bisschen =)
Auf jeden Fall habe ich ein Problem,denn ich möchte mir ein kleines Spiel
Programmieren Hier sind meine ersten Zeilen=

```
public class Zielen 
{
    // Variablen
    double x_float = 400;               // Startposition
    double y_float = 400;               // Startposition
    double vx;                          // x - Geschwindigkeit
    double vy;                          // y - Geschwindigkeit
    double angle = 80;                  // Schusswinkel
    double power = 120;                 // Geschwindigkeit , power
    final double gravity = 0.3;         // Schwerkraftskoeffizient

    double pi = 2 * Math.PI;            // 2 * pi konstante

    int radius = 3;     // Radius des Balles
    
    //Variablen
    private lmage dblmage;
	private Graphics g;




    // Werte für die Kannone
    int i = 400 + (int)(20.0 * Math.cos(((double)angle * pi) / 360.0));
    int j = 400 - (int)(20.0 * Math.sin(((double)angle * pi) / 360.0));

    boolean addjusting = false; // Wichtig für Doppelpufferung oder nicht

    // Neue Windgeschwindigkeit (random)
    double wind = rnd.nextFloat() * 4.0 - 2.0;

    public void init()
    {
        setBackground (Color.blue);
    }

    public void start ()
    {
        // Schaffen eines neuen Threads, in dem das Spiel läuft
        Thread th = new Thread (this);
        // Starten des Threads
        th.start ();
    }

    public void stop()
    {

    }

    public void destroy()
    {

    }

   

    /** Update - Methode, Realisierung der Doppelpufferung zur Reduzierung des Bildschirmflackerns */
    public void update (Graphics g)
    {
        if (addjusting)
        {
            // Initialisierung des DoubleBuffers
            if (dbImage == null)
            {
                dbImage = createImage (this.getSize().width, this.getSize().height);
                dbg = dbImage.getGraphics ();
            }

            // Bildschirm im Hintergrund löschen
            dbg.setColor (getBackground ());
            dbg.fillRect (0, 0, this.getSize().width, this.getSize().height);

            // Auf gelöschten Hintergrund Vordergrund zeichnen
            dbg.setColor (getForeground());
            paint (dbg);

            // Nun fertig gezeichnetes Bild Offscreen auf dem richtigen Bildschirm anzeigen
            g.drawImage (dbImage, 0, 0, this);
        }
        else
        {
            paint(g);
        }
    }


    public boolean keyDown (Event e, int key)
    {
        // linke Cursortaste
        if (key == Event.LEFT)
        {
            angle++;
            i = 400 + (int)(20.0 * Math.cos(((double)angle * pi) / 360.0));
            j = 400 - (int)(20.0 * Math.sin(((double)angle * pi) / 360.0));
            addjusting = true;
        }
        else if (key == Event.DOWN)
        {
            power--;
            addjusting = true;
        }
        else if (key == Event.UP)
        {
            power++;
            addjusting = true;
        }
        // rechte Cursortaste
        else if (key == Event.RIGHT)
        {
            angle--;
            i = 400 + (int)(20.0 * Math.cos(((double)angle * pi) / 360.0));
            j = 400 - (int)(20.0 * Math.sin(((double)angle * pi) / 360.0));
            addjusting = true;
        }
        // SpaceBar hat Wert 32
        else if (key == 32)
        {
            // Zurücksetzen der Startposition
            x_float = i;
            y_float = j;

            // Berechnen der Startgeschwindigkeiten
            vx = (power / 10.0) * (float)Math.cos((pi * (double)angle) / 360.0);
            vy = -((power / 10.0) * (float)Math.sin((pi * (double)angle) / 360.0));

            addjusting = false;
        }

            return true;
    }


    public void run ()
    {
        // Erniedrigen der ThreadPriority um zeichnen zu erleichtern
        Thread.currentThread().setPriority(Thread.MIN_PRIORITY);

        // Solange true ist läuft der Thread weiter
        while (true)
        {
            // Ändern der x und y Position der Kugel
            x_float += vx;
            y_float += vy;

            // Ändern der vy (Schwerkraft wirkt auf die Kugel)
            vy += 0.3;

            // Berechnen des Windeinflusses
            double w = 1.9 * wind - vx;

            if (wind >=0)
            {
                vx+= (w * w) / 512.0;
            }
            else
            {
                vx -= (w * w) / 512.0;
            }

            // Neuzeichnen des Applets
            repaint();

            try
            {
                // Stoppen des Threads für in Klammern angegebene Millisekunden
                Thread.sleep (20);
            }
            catch (InterruptedException ex)
            {
                // do nothing
            }

            // Zurücksetzen der ThreadPriority auf Maximalwert
            Thread.currentThread().setPriority(Thread.MAX_PRIORITY);
        }
    }

    public void Angriff ()
    {
     while (x_float =vx)
      {
     if (x_float =y_float )
        {
           power =power+10;
        }
     else
        {   
           power = power;
        }
      }
    }
    public void paint (Graphics g)
    {
        g.setColor  (Color.white);

        g.drawString ("power " + power, 100, 20);
        g.drawString ("angle " + angle, 100, 40);
        g.drawString ("wind " + wind, 100, 60);

        g.fillOval ((int)x_float - radius, (int)y_float - radius, 2 * radius, 2 * radius);
        g.drawLine(399, 400, i - 1, j);
        g.drawLine(401, 400, i + 1, j);
        g.drawLine(400, 399, i, j - 1);
        g.drawLine(400, 401, i, j + 1);
        g.fillOval (390, 390, 20, 20);

    }

}
```


----------



## Java Freak 3000 (20. Mrz 2011)

könnt ihr mir Helfen?
Da muss ein Fehler drin sein!


----------



## XHelp (20. Mrz 2011)

1. Völlig falscher Thread, der nicht mal ein bisschen mit dem Thema zu tun hat
2. Willst du nicht mal eine Frage stellen, die beantwortet werden kann?


----------

