Hallo!
Ich habe ein Servlet in Eclipse geschrieben, welches sich mit der Datenbank verbinden soll und testen soll,
ob sich die gesendeten Werte in der Datenbank befinden, und wenn ja ein true zurücksenden bzw. das es auf der ClientSeite als true erkannt werden soll.
Auf der Client Seite benutze ich Flex, der Server ist ein Tomcat mit XAMPP.
Die Datenbank ist eine mysql-Datenbank, den Treiber dafür habe ich auch installiert.
Beispielwerte sind drin.
Nur kriege ich erstmal keine Nachricht, ich weiss nicht genau wo der Fehler liegt.
hier das Servlet:
Auf der Flex-Seite erhalte ich das URLLOader-Objekt, wo ich dann sage:
data.loader==true
für die Alternative:
data.loader.Wert=="true".
Ich habe ein Servlet in Eclipse geschrieben, welches sich mit der Datenbank verbinden soll und testen soll,
ob sich die gesendeten Werte in der Datenbank befinden, und wenn ja ein true zurücksenden bzw. das es auf der ClientSeite als true erkannt werden soll.
Auf der Client Seite benutze ich Flex, der Server ist ein Tomcat mit XAMPP.
Die Datenbank ist eine mysql-Datenbank, den Treiber dafür habe ich auch installiert.
Beispielwerte sind drin.
Nur kriege ich erstmal keine Nachricht, ich weiss nicht genau wo der Fehler liegt.
hier das Servlet:
Code:
package meinservletpackage;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.UnavailableException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class LoginServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public void init(ServletConfig config) throws ServletException {
super.init(config);
try {
// Treiber laden
Class.forName("com.mysql.jdbc.Driver").newInstance();
} catch (ClassNotFoundException e) {
throw new UnavailableException(
"Login init() ClassNotFoundException: " + e.getMessage());
} catch (IllegalAccessException e) {
throw new UnavailableException(
"Login init() IllegalAccessException: " + e.getMessage());
} catch (InstantiationException e) {
throw new UnavailableException(
"Login init() InstantiationException: " + e.getMessage());
}
}
public void doPost(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
System.out.println("request: " + req);
res.setContentType("text/html");
PrintWriter out = res.getWriter();
// Holen der Parameter aus dem POST
String username = req.getParameter("username");
String password = req.getParameter("password");
System.out.println("username: " + username);
System.out.println("password: " + password);
try {
if (userInDB(username, password)) {
[COLOR="Red"]//out.println("Wert=true");[/COLOR]
wäre das die Alternative?
out.println(true);
} else {
out.println(false);
}
} catch (SQLException e) {
e.printStackTrace();
}
}
protected boolean userInDB(String username, String password)throws SQLException {
if (username == null || password == null) {
// Register
System.out.println("Nicht vorhanden.");
} else {
Connection connection = DriverManager.getConnection(
// Ersetzen durch übergebene Parameter username, password!
"jdbc:mysql://localhost:3306/einkaufDB", "root", "");
Statement statement = null;
ResultSet resultSet = null;
try {
// Prüft, ob Kombi in Datenbank, wenn result
statement = connection.createStatement();
resultSet = statement
.executeQuery("SELECT username, password FROM userlogin
WHERE username="
+ "'"
+ username
+ "'"
+ "AND password="
+ "'"
+ password + "'");
} catch (SQLException e) {
System.out.println("Nicht vorhanden:" + e.getMessage());
} finally {
if (resultSet != null)
try {
resultSet.close();
} catch (SQLException ignore) {
}
if (statement != null)
try {
statement.close();
} catch (SQLException ignore) {
}
}
}
return true;
}
}
Auf der Flex-Seite erhalte ich das URLLOader-Objekt, wo ich dann sage:
data.loader==true
für die Alternative:
data.loader.Wert=="true".