Just nu i M3-nätverket
Jump to content

Java applet!


CCC

Recommended Posts

Om jag har en applet som ska kopplas till en databas

så ska man tydligen skriva bland annat:

 

OBS!

Detta är bara ett exempel som jag hittat i ett inlägg!

 

 

Class.forName("com.mysql.jdbc.Driver").newInstance();

conn = java.sql.DriverManager.getConnection("jdbc:mysql://localhost/databasen","username","password");

 

 

Men, vad står allt som är innanför " " för?

Och vad är det som måste finnas på servern för att det ska fungera?

 

/CCC

 

Link to comment
Share on other sites

Conny Lundgren

Hej

 

detta beror lite på vilken SQL-server du ska connecta emot, det du skriver är som du kanske ser en MySQL databas.

 

Connectionsträngen ser lite olika ut beroende på vilket sätt man väljer att connecta mot databasen med, och vilken databasmotor det är (oracle,mysql,mssql osv)

 

Förenklat kan man säga att det finns 4 typer av JDBC drivers att connect mot en databas, varav 4an är den "bästa"

 

Ska du connecta mot en databas som inte stödjer JDBC (t.ex Access) så får man snällt använda typ 1

 

Typ 2 anropar databashateraren direkt genom dess biblioteksrutiner.

 

Typ3 är i praktiken en Proxy, dvs Drivern anropar databashateraren via OSBC eller via anrop till biblioteksrutiner.

 

Typ4 är till 100% skriven i Java och kommunicerar direkt med databashanteraren. Att den i skriven i Java gör även att den är helt platformsoberoende, så vill du använda den i en Applet är det denna typen du ska använda.

 

Mer information hittar du här

 

http://java.sun.com/docs/books/tutorial/jdbc/

 

Hoppas att detta hjälper dig lite.

 

mvh Conny

 

Link to comment
Share on other sites

Hej!

 

Tack för informationen Conny!

 

Men, fallet är såhär: jag har en applet som jag har kontaktat en pgsql förut internt på skolan. Nu vill jag göra samma sak med en Mysql på nätet. Problem 1 är att appleten syns inte över huvud taget, och jag har inte en aning om vad jag ska skriva när jag ska kontakta databasen heller, sökväg mm.

Vet heller inte vad som behöver finnas på servern.

På skolan räckte det med att jag kompilerade javan, lade upp xxx.class på servern och att jag lade upp en fil som heter jdbc.jar och så fungerade det.

Har jag missat något?

Jag borde iaf se appleten även om jag inte skrivit kontakten med db rätt.

 

Carola

 

Link to comment
Share on other sites

Precis vad jag säger, en Java applet kan bara koppla upp sig emot den server den själv ligger på.

 

Om du har appleten på http://www.somedomain.tld/minapplet.html så kan endast appleten göra anslutningar till somedomain.tld

 

Detta är en del av den "sandbox" som en applet körs i, den har en liten sandlåda att leka i där säkerheten är rigorös.

 

Vill man att appleten ska kunna gå utanför sandlådan måste den vara signerad med ett certifikat och då poppar en ruta upp vid körning och frågar användaren om denne vill acceptera att appleten får dessa rättigheter.

 

[inlägget ändrat 2003-02-03 11:20:27 av Zigma2]

Link to comment
Share on other sites

Förlåt mig Zigma2, jag mår vara trögfattad!

 

Jag har lagt appleten(xxx.class) i "min nya map" på webbservern, jag menar inte att den ska köras från skolans server! Ska det inte fungera då?

Om det var så du menade?

 

 

Carola

 

Link to comment
Share on other sites

Jag vet inte riktigt längre vad du vill göra, lägga upp en applet är väl inga problem frågan är vad du gör i appleten.

 

Det såg ut som du ville koppla till en databas, denna måste då ligga på samma server annars fungerar det inte såvida appleten inte är signerad.

 

Du kan nog hitta mer information om du söker på nätet, detta är en ganska basic kunskap om man ska skriva applets.

 

Sök på "applet sandbox", "applet security", "java code signing"

 

Om detta är ditt problem just nu vet jag inte men det lär bli problem i vilket fall som helst om du försöker koppla till en annan server.

 

Att det funkade på skolan berodde nog på att allt låg på "localhost" eller hur ?

 

[inlägget ändrat 2003-02-03 12:00:26 av Zigma2]

Link to comment
Share on other sites

 

Jo det är just det som är problemet!

Jag kan inte ens visa denna enkla applet!

 

EasterApplet.java

 

import java.applet.Applet;

import java.awt.*;

public class EasterApplet extends Applet

{

public void paint(Graphics g)

{

setBackground(Color.yellow);

g.setColor(Color.green);

g.drawString("Glad Påsk", 50, 50);

}

}

 

Och här är htmlfilen!

<html>

<head>

<title>Applet</title>

</head>

<body>

<applet code = "Hela sökvägen/EasterApplet.class" width="300" height="300"

archive ="Hela sökvägen/jdbc.jar">

</applet>

</body>

</html>

 

Jag kompilerar javafilen utan problem, lägger upp EasterApplet.class och htmlfilen i min map.

Men jag kan inte se den!

 

Carola

 

 

 

Link to comment
Share on other sites

Det ser inte riktigt rätt ut, du ska inte ha sökväg i code attributet, däremot paket angivelse men det orkar jag inte förklara just nu.

 

Ta bort archive när du testar den enkla appleten du visade:

 

<applet code="EasterApplet" width="300" height="300"></applet>

 

".class" behövs inte heller, lika lite som man anger ".class" när man kör ett java program på kommando promten.

 

Link to comment
Share on other sites

Det var det första jag provade med när jag inte kunde se min egen!

Har även gått in på sidan du visade och ja, jag kan se alla fina miniräknare!

 

Carola

 

Link to comment
Share on other sites

Du får aktivera java konsollen i webläsaren och se om du får något vettigt felmeddelande.

 

I IE görs det under vertyg > internet alternativ > avancerat, sedan lägger den sig under "visa" menyn.

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...