[Java] JSON-Kommunikation mit Jackson

Kommunizieren Sie Json mit Java (mit Jackson)

Umgebung

Wie immer ist es ein Memorandum ...

bestellen

  1. Dto Generation
  2. Konvertieren Sie mit Jackson in Dto-> json
  3. Kommunizieren Sie mit HttpURLConnection
  4. Erhalten Sie Ergebnisse

Dto Generation

public class SampleDto implements Serializable {
    private static final long serialVersionUID = 1L;  //Es ist besser, es richtig zu generieren

    private int id;
    private String mail;

	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getMail() {
		return mail;
	}
	public void setMail(String mail) {
		this.mail = mail;
	}
}

Dto-> json Konvertierung

	protected String createJson4Sample(SampleDto dto) {

		ObjectMapper mapper = new ObjectMapper();
		try {
			return mapper.writerWithDefaultPrettyPrinter().writeValueAsString(dto);
		} catch (JsonProcessingException e) {
			StringWriter sw = new StringWriter();
			e.printStackTrace(new PrintWriter(sw));
			log.error(sw.toString());
			return null;
		}
	}

Kommunikation

	protected String requestJson(String method, String json, String urlPath, String charset,
			String bearer) {

		HttpURLConnection con = null;
		if (StringUtils.isEmpty(charset)) {
			charset = StringUtils.lowerCase(StandardCharsets.UTF_8.name());
		}
		String body = "";
		try {
			URL url = new URL(urlPath);
			con = (HttpURLConnection)url.openConnection();
			con.setRequestMethod(method);
			con.setUseCaches(false);
			con.setDoOutput(true);
			con.setRequestProperty("Content-Type", "application/json; charset=" + charset);
			if (StringUtils.isNotEmpty(bearer)) {
				con.setRequestProperty("Authorization", "Bearer "+bearer);
			}

			OutputStreamWriter out = new OutputStreamWriter(new BufferedOutputStream(con.getOutputStream()));
			out.write(json);
			out.close();

			BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
			String line = in.readLine();
			while (line != null) {
				body = body + line;
				line = in.readLine();
			}
		}
		catch (Exception e) {
			StringWriter sw = new StringWriter();
			e.printStackTrace(new PrintWriter(sw));
			log.error(sw.toString());
			return null;
		}
		finally {
			if (con != null) {
				con.disconnect();
			}
		}
		return body;
	}

Ergebnisse bekommen

	protected boolean checkResponseJson(String response) {

		ObjectMapper mapper = new ObjectMapper();
		try {
			if (StringUtils.isEmpty(response)) { return false; }
			JsonNode root = mapper.readTree(response);

			String success = root.get("success").asText();
			String id = root.get("id").asText();
			log.info("Response:" + id + ":" + success);
			if (!"OK".equalsIgnoreCase(success)) {
				return false;
			}
		} catch (Exception e) {
			StringWriter sw = new StringWriter();
			e.printStackTrace(new PrintWriter(sw));
			log.error(sw.toString());
			return false;
		}
		return true;
	}

Danke für deine harte Arbeit!

Recommended Posts

[Java] JSON-Kommunikation mit Jackson
JSON mit Java und Jackson Teil 2 XSS-Maßnahmen
Ich habe versucht, UDP mit Java zu kommunizieren
Versuchen Sie die bidirektionale Kommunikation mit gRPC Java
Hinweise zur HTTP-Kommunikation mit Java (OkHttp)
Anders als bei JSON
Behandeln Sie große JSON mit Java Lambda
Installieren Sie Java mit Homebrew
Lesen Sie JSON in Java
Wechseln Sie die Plätze mit Java
Installieren Sie Java mit Ansible
Importieren Sie JSON mit SolrJ
Bequemer Download mit JAVA
Validierung von JSON mit JSON-Schema
Behandeln Sie JSON mit minimal-json
Schalten Sie Java mit direnv
Java Network Basics (Kommunikation)
POST JSON in Java
Java-Download mit Ansible
Erstellen Sie JSON in Java
Lass uns mit Java kratzen! !!
Formatieren Sie JSON mit org.json
Erstellen Sie Java mit Wercker
Endian-Konvertierung mit JAVA
Konvertieren Sie JSON und YAML in Java (mit Jackson und SnakeYAML)
Konvertieren Sie Java Enum Enumeration und JSON von und nach Jackson
[Java] Konvertieren Sie JSON in Java und Java in JSON-How to use GSON and Jackson-
(Java) Einfache BDD mit Spektrum?
Verwenden Sie Lambda-Ebenen mit Java
Erstellen Sie mit Gradle ein Java-Multiprojekt
Erste Schritte mit Java Collection
Java-Konfiguration mit Spring MVC
Grundlegende Authentifizierung mit Java 11 HttpClient
Experimentieren wir mit der Java-Inline-Erweiterung
Führen Sie Batch mit Docker-Compose mit Java-Batch aus
Schreiben Sie Java Try-Catch mit Optional neu
Installieren Sie Java 7 mit Homebrew (Fass)
JSON in Java und Jackson Teil 1 Gibt JSON vom Server zurück
Java zum Spielen mit Function
Verwendung von JSON-Daten in der WebSocket-Kommunikation (Java, JavaScript)
Versuchen Sie eine DB-Verbindung mit Java
Aktivieren Sie Java EE mit NetBeans 9
[Java] JavaConfig mit statischer innerer Klasse
Versuchen Sie gRPC mit Java, Maven
Lassen Sie uns Excel mit Java betreiben! !!
Java-Versionsverwaltung mit SDKMAN
RSA-Verschlüsselung / Entschlüsselung mit Java 8
Paging PDF mit Java + PDFBox.jar
Sortieren Sie Zeichenfolgen als charakteristische Funktion mit Java
Objektorientiert mit Strike Gundam (Java)
[Java] Inhaltserfassung mit HttpCliient
Java-Versionsverwaltung mit jenv
Fehlerbehebung mit Java Flight Recorder
[Java] [jackson] Entspricht dem nachfolgenden Komma (nachgestellten Komma) beim Parsen von JSON.
Optimieren Sie Java-Tests mit Spock
Stellen Sie mit Java eine Verbindung zur Datenbank her
Stellen Sie mit Java eine Verbindung zu MySQL 8 her
Fehler beim Spielen mit Java
Verwenden von Mapper mit Java (Spring)
Java Study Memo 2 mit Progate
POST Json in Java ~ HttpURLConnection ~