Post Variable in Java

RelaxxIt

Mitglied
Hallo Leute,

Wie kann ich eine Post Variable mit Java speichern ähnlich wie bei PHP.
Sodass ich eine HTTP Anfrage quasi nicht per PHP abfange sondern per Java und in meine Datenbank speichern kann?

So wäre es ja in PHP:

PHP-Code:
$statement = mysqli_prepare($con, "INSERT INTO ??? VALUES (?)");
mysqli_stmt_bind_param($statement, "s", $name);

$name = $_POST["name"];

mysqli_stmt_execute($statement);
mysqli_stmt_close($statement);


Und das möchte ich einfach in Java haben, brauche eigentlich nur ein kleines Beispiel um es zu verstehen. Oder wo finde ich die passende Dokumentation dazu?

vielen Dank für die Antworten
smile.png


LG
 
Oder wo finde ich die passende Dokumentation dazu?

Mit einer normalen Java-Anwendung geht sowas prinzipiell zwar auch, aber nicht mal eben so. Web-Programmierung in Java ist ein komplett eigenständiges Thema.
Es gibt hier nicht nur den einen richtigen Weg, sondern etliche. Welcher angemessen und deine Bedürfnisse abdeckt, und auf welcher Abstraktionsebene man ansetzt, kann man mit den spärlichen Informationen aus deiner Frage nicht beantworten.
Eine relativ leichtgewichtige Lösung wäre ein einfaches Servlet, welches in einem Web container läuft. Über das HttpServletRequest Objekt hast du Zugriff auf die mitgesendeten Parameter des HTTP requests.
Siehe dazu u.A.:
https://en.wikipedia.org/wiki/Web_container
http://docs.oracle.com/javaee/6/api/javax/servlet/http/HttpServletRequest.html

In deinem Beispiel wird als JAX RS als "higher Level API" eingesetzt.
Siehe: https://de.wikipedia.org/wiki/Java_API_for_RESTful_Web_Services
 
Eine Frage: Dies ist ein Codeschnipsel von einer Applikation, dort wird mit dem Register request eine php datei normal ausgeführt. Ist es möglich das gleiche mit einer Javadatei zu machen?

Java:
package login.run_ba;
import com.android.volley.Response;
import com.android.volley.toolbox.StringRequest;

import java.util.HashMap;
import java.util.Map;

/**
* Created by Patrick on 26.10.2016.
*/
public class RegisterRequest extends StringRequest {
    //private static final String REGISTER_REQUEST_URL = "http://runbar.000webhostapp.com/main.java";
//Hier statt einer php Datei quasi eine java datei ausführen lassen, z.b. test.java
    private static final String REGISTER_REQUEST_URL = "http://192.168.2.101/[B]test.java[/B]";

    private Map<String, String> params;

    public RegisterRequest(String name, String firstname, String username, int age, String password, Response.Listener<String> listener) {
        super(Method.POST, REGISTER_REQUEST_URL, listener, null);
        params = new HashMap<>();
        params.put("name", name);
        params.put("firstname", firstname);
        params.put("username", username);
        params.put("age", age + "");
        params.put("password", password);
    }

     @Override
    public Map<String, String> getParams() {
        return params;
    }
}
 
nein der code drunter ist eine applikation auf einem smartphone, und per url wird quasi eine datei ausgeführt die irgendwas macht, mit php kann man ja einfach dateien ausführen lassen um z.b. daten in eine datenbank zu speichern, und die frage ist ob ich das gleiche mit einer java datei irgendwie machen kann, ob man dazu irgendwas auf dem server installieren muss oder irgendwas
 
Eine php-Datei kann man auch nicht einfach so "ausführen". Hier hast du für gewöhnlich einen entsprechenden Web-Server mit php-Modul, auf welchem der Code dann ausgeführt wird. Das selbe gilt prinzipiell für Java, siehe dazu mein vorheriges Posting. Du kannst das natürlich auch alles in deine Anwendung einbauen - dir also quasi deinen eigenen Web-Server selbst schreiben - aber das willst du sicherlich nicht.
 

Zurück
Oben