Avatar billede montymus Nybegynder
24. november 2004 - 15:32 Der er 7 kommentarer og
1 løsning

hvordan får man jsp til at snakke med sin sql ting

Jeg har lavet en hp.
Jeg har nogle tabeller i min mysql db:
jcnprodukt
jcnkunde

Hvordan får jeg min hp til at dykke ned og hente oplysninger om f.eks jcnkunde frem på min hp..

Hvad er koden til det???
Avatar billede arne_v Ekspert
24. november 2004 - 15:49 #1
Det kan du gøre på mange måder:

1)  embedde Java kode med JDBC kald i selve siden

2)  kalde nogle seperate Java klasser som bruger JDBC kald

3)  bruge JSTL's sql support

etc.etc.
Avatar billede arne_v Ekspert
24. november 2004 - 15:50 #2
#1 er ikke køn men er ihvertfald simpel.

Eksempel:

<%@ page import="java.sql.*" %>
<%
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:odbc:TestMSAccess");
Statement stmt = con.createStatement();
if(request.getMethod().equals("POST")) {
    int F1 = Integer.parseInt(request.getParameter("F1"));
    String F2 = request.getParameter("F2");
    stmt.executeUpdate("INSERT INTO T1 VALUES (" + F1 + ",'" + F2 + "')");
}
%>
<!doctype html public "-//w3c/dtd HTML 4.01 Transitional//en">
<html>
<head>
<title>T1</title>
</head>
<body>
<h1>T1</h1>
<h2>Show data</h2>
<table border>
<%
ResultSet rs = stmt.executeQuery("SELECT * FROM T1");
while(rs.next()) {
%>
<tr>
<td><%=rs.getInt("F1")%></td>
<td><%=rs.getString("F2")%></td>
</tr>
<%
}
%>
</table>
<h2>Add data</h2>
<form method="post" action="db.jsp">
F1:<input type="text" name="F1" size="10">
<br>
F2:<input type="text" name="F2" size="20">
<br>
<input type="submit" value="Add">
</form>
</body>
</html>
Avatar billede arne_v Ekspert
24. november 2004 - 15:51 #3
Avatar billede arne_v Ekspert
24. november 2004 - 15:54 #4
Connection i ovenståend evar til Access.

Connection til MySQL vil se ud som:

        Class.forName("com.mysql.jdbc.Driver");
        Connection con = DriverManager.getConnection("jdbc:mysql://localhost/Test", "", "");

resten er ens.
Avatar billede Slettet bruger
24. november 2004 - 15:55 #5
Indsæt følgende i din JSP side.

<%@ page import="java.sql.*, java.util.*, java.io.*"%>
<%

Connection connection = null;
Statement statement = null;
ResultSet rs = null;

try
{
Class.forName("com.mysql.jdbc.Driver");
connection = DriverManager.getConnection("jdbc:
mysql://localhost/databasenavn?user=brugernavn&password=kodeord");
String query = ("SELECT * FROM Tabelnavn");
statement = connection.createStatement();
rs = statement.executeQuery(query);

while(rs.next())
{
out.println(rs.getString(1)+"<br>");
}
rs.close();
}
catch (Exception e)
{
out.println(e+".");
}
finally
{
try
{
if(connection != null)
{
statement.close();
connection.close();
}
}
catch (SQLException s)
{
out.println(s.getMessage());
}
}
%>
Avatar billede arne_v Ekspert
24. november 2004 - 20:05 #6
Var det eksempel så meget bedre end mit ?
Avatar billede montymus Nybegynder
25. november 2004 - 09:18 #7
sry arnev  jeg sad og sov....
Avatar billede arne_v Ekspert
25. november 2004 - 09:19 #8
skidt pyt - det går nok
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester