L
Leeprasteen
Gast
ich möchte über ein java-applet auf eine mysql-datenbank zugreifen - im interpreter des jbuilders funktioniert das auch, aber innerhalb der webseite funktioniert der zugriff nicht -> der treiber kann nicht geladen werden!?
was und wo genau muss ich den treiber auf dem webserver zur verfügung stellen??? oder liegt das evt noch an was ganz anderem?
thx im voraus!
was und wo genau muss ich den treiber auf dem webserver zur verfügung stellen??? oder liegt das evt noch an was ganz anderem?
thx im voraus!
Code:
import java.applet.*;
import java.util.*;
import java.awt.*;
import javax.swing.*;
import javax.swing.border.*;
import javax.swing.plaf.*;
import java.sql.*;
public class Test_Applet_DB extends JApplet {
private boolean isStandalone = false;
//Parameterwert holen
public String getParameter(String key, String def) {
return isStandalone ? System.getProperty(key, def) :
(getParameter(key) != null ? getParameter(key) : def);
}
JTextField testTextField;
//Das Applet konstruieren
public Test_Applet_DB() {
setUpDisplay();
}
//Das Applet starten
public void start() {
String URL = "jdbc:mysql://192.168.35.116/test";
// String URL = "jdbc:odbc:FZ";
String username = "";
String password = "";
String resultText = "initialized text";
try
{
// Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
Class.forName("com.mysql.jdbc.Driver");
// Class.forName("org.gjt.mm.mysql.Driver").newInstance();
}
catch (Exception e)
{
testTextField.setText("Kann JDBC Treiber nicht laden.");
return;
}
Statement stmt = null;
Connection con = null;
try
{
con = DriverManager.getConnection (URL, username, password);
stmt = con.createStatement ();
}
catch (Exception e)
{
testTextField.setText("Probleme bei der Verbindung mit" + URL);
}
try
{
// ResultSet result = stmt.executeQuery ("SELECT Film FROM FZ;");
ResultSet result = stmt.executeQuery ("SELECT name FROM guestbook;");
result.next ();
resultText = result.getString ("name");
con.close ();
}
catch (Exception e)
{
e.printStackTrace ();
}
testTextField.setText(resultText);
}
private void setUpDisplay()
{
this.getRootPane().setBorder(new BevelBorder(BevelBorder.RAISED));
// set fonts to smaller-than-normal size, for compaction!
UIManager manager = new UIManager();
FontUIResource appFont = new FontUIResource("SansSerif", Font.PLAIN, 10);
UIDefaults defaults = manager.getLookAndFeelDefaults();
Enumeration keys = defaults.keys();
while (keys.hasMoreElements())
{
String nextKey = (String)(keys.nextElement());
if ((nextKey.indexOf("font") > -1) || (nextKey.indexOf("Font") > -1))
{
manager.put(nextKey, appFont);
}
}
// add WindowCloseAdapter to catch window close-box closings
// addWindowListener(new WindowCloseAdapter());
testTextField = new JTextField(20);
testTextField.setText("Text vor dem Test");
testTextField.setEditable(true);
// now set up display
// set params for layout manager
GridBagLayout theLayout = new GridBagLayout();
GridBagConstraints c = new GridBagConstraints();
c.gridwidth = 1;
c.gridheight = 1;
c.fill = GridBagConstraints.NONE;
c.ipadx = 0;
c.ipady = 0;
c.insets = new Insets(3,2,2,2);
c.anchor = GridBagConstraints.CENTER;
c.weightx = 0;
c.weighty = 0;
JPanel testPanel = new JPanel();
testPanel.setLayout(theLayout);
c.gridx = 1;
c.gridy = 1;
theLayout.setConstraints(testTextField, c);
testPanel.add(testTextField);
this.getContentPane().setLayout(theLayout);
c.gridx = 1;
c.gridy = 1;
theLayout.setConstraints(testPanel, c);
this.getContentPane().add(testPanel);
}
}