Posted: Mai 13th, 2011 | Author: admin | Filed under: Programmieren | Tags: Beispiel, code, Example, PHP, redirect, Weiterleitung | No Comments »
Oft braucht man bei einer PHP-Webanwendungen Weiterleitungen, zum Beispiel bei einem Login-System.
Hier das Codebeispiel:
Header("Location: login.php");
Posted: April 26th, 2011 | Author: admin | Filed under: Internet, Programmieren, Software | Tags: Ladezeit, verkürzen, Wordpress | 5 Comments »
Bei einem Aufruf eines Blogs werden serverseitig viele Leseoperationen durchgeführt. Der PHP-Code muss interpretiert werden und Einträge aus der Datenbank müssen geholt werden. Erst dann kann die Seite an den Benutzer gesendet werden. Um diese Zeit zu verkürzen hat man die Möglichkeit mittels dem Plugin WP-Super-Cache die Seiten des Blogs zwischen zu speichern, so dass zum Beispiel gar keine Datenbankaufrufe mehr getätigt werden müssen. Ich hab das Plugin mal getestet und die Zeit stoppen lassen.
Vorher
Stolze 4,84 Sekunden Ladezeit

Nachher
Schlappe 1,23 Sekunden Ladezeit.

Das Plug-In ist also aufjedenfall sehr empfehlenswert!
Posted: April 24th, 2011 | Author: admin | Filed under: Programmieren | Tags: abspielen, Applet, Java, play, sound, WAV | No Comments »
Will man in einem Java Applet eine WAV-Datei abspielen ohne auf die lokale Festplatte zugreifen zu müssen, also ohne dass der Benutzer eine Sicherheitsfrage gestellt bekommt, muss man die Applet eigene Methode getAudioClip verwenden. Leider funktioniert diese nicht für MP3s oder OGG.
Beispiel Applet
Applet-Quellcode
import java.applet.AudioClip; import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.net.MalformedURLException; import java.net.URL; import javax.swing.JApplet; import javax.swing.JButton; import javax.swing.JComponent; import javax.swing.JFrame; import javax.swing.SwingUtilities; public class PlayWav extends javax.swing.JApplet { public static JApplet playWav; private JButton playButton; private JButton stopButton; // Audio private AudioClip audioClip; public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() { public void run() { JFrame frame = new JFrame(); PlayWav inst = new PlayWav(); frame.getContentPane().add(inst); ((JComponent) frame.getContentPane()).setPreferredSize(inst .getSize()); frame.pack(); frame.setVisible(true); } }); } public PlayWav() { super(); initGUI(); } private void initGUI() { try { playWav = this; BorderLayout thisLayout = new BorderLayout(); getContentPane().setLayout(thisLayout); { playButton = new JButton(); getContentPane().add(playButton, BorderLayout.CENTER); playButton.setText("play"); // Play // Wav Datei online abspielen mittels der Applet-Methode // getAudioClip. playButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { try { // alarm.wav liegt in // http://blog.mynotiz.de/howTo/PlayWav/alarm.wav URL url = new URL(getDocumentBase().toString()); audioClip = playWav.getAudioClip(url, "alarm.wav"); } catch (MalformedURLException e) { e.printStackTrace(); } // Play normal audioClip.play(); // Play in loop // audioClip.loop(); } }); } { stopButton = new JButton(); getContentPane().add(stopButton, BorderLayout.SOUTH); stopButton.setText("stop"); // Stop stopButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { audioClip.stop(); } }); } } catch (Exception e) { e.printStackTrace(); } } } |
HTML-Quellcode
<applet style="border: 1px solid black;" code="PlayWav.class" archive="playWav.jar"> Ihr Browser unterstütz keine Java Applets! </applet>
Wie ihr aus eurem Code ein Applet erzeugt erfahrt ihr hier.
FTP-Ordner
Im FTP-Verzeichnis sieht das ganze dann wie folgt aus.

Posted: April 2nd, 2011 | Author: admin | Filed under: Programmieren, Tutorials | Tags: einrichten, Entwicklung, Java, slick, slick2D, Spiele, Tutorial | 2 Comments »
Seit einiger Zeit befasse ich mich mit der Java 2D Spiele-Engine Slick (Danke an Tobse). Deswegen habe ich mir gedacht wieso nicht ein Tutorial schreiben. Heraus gekommen ist ein Dokument welches beschreibt wie man Slick einrichtet, wie mein sein erstes Projekt erstellt und wie man ein erstes Spiel entwickelt. Als Beispiel-Spiel habe ich mich für einen Pong-Klon entschieden.
Hier geht’s zum Slick Tutorial:

Posted: Januar 21st, 2011 | Author: admin | Filed under: Programmieren | Tags: ArrayList, Collection, Element löschen, Iterator, Java, java.util.ConcurrentModificationException, LinkedList, List, während Iteration | No Comments »
Oft kommt es vor dass man in Java während der Iteration über eine ArrayList oder eine LinkedList ein Element nach einem gewissen Kriterium heraus löschen will. Über die gewöhnliche Schleife for(String name : namen) geht dies jedoch nur über Umwege mit einer zweiten Hilfsliste. Löscht man Elemente während der Iteration mit obiger Schleife erhält man eine java.util.ConcurrentModificationException.
Folgende Lösung ist weitaus einfacher und effizienter. Hier wird nämlich ein Iterator verwendet und es ist möglich während der Iteration zu löschen:
import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class ListRemoveDuringIteration { public static void main(String[] args) { List<String> namen = new ArrayList<String>(); namen.add("Peter"); namen.add("Paul"); namen.add("Maria"); namen.add("Frank"); for (Iterator<String> nameIter = namen.iterator(); nameIter.hasNext();){ String name = nameIter.next(); if(name.equals("Paul")){ nameIter.remove(); System.out.println("Paul wurde während der Iteration aus der Liste gelöscht!"); } } } } |
Quelltextdatei herunterladen: ListRemoveDuringITeration.java