<%@ page import = "java.io.*,java.util.*,java.net.http.*,java.net.URI,java.net.http.HttpResponse.BodyHandlers,java.net.HttpURLConnection,java.net.URL,java.nio.charset.StandardCharsets,org.json.*" %> <%@ page pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %> debug <%@ page buffer="8192kb" autoFlush="true" %> Search by Publisher
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・                   ・・
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
Wii Points
Search by Publisher
<% // Fetch the publishers from the Express backend String targetURL = "http://127.0.0.1:8082/publishers"; if (request.getParameter("vc") != null) { targetURL += "/vc"; } StringBuilder res = new StringBuilder(); try { URL url = new URL(targetURL); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("GET"); BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream())); String line; while ((line = reader.readLine()) != null) { res.append(line); } reader.close(); } catch (Exception e) { e.printStackTrace(); res.append("[]"); // Default to an empty array in case of error } // Convert response string to JSON array JSONArray publishers = new JSONArray(res.toString()); %>
Nintendo
Titles:
<% int numOfTitles = 0; for (int i = 0; i < publishers.length(); i++) { JSONObject publisherObj = publishers.getJSONObject(i); String publisher = publisherObj.getString("publisher"); if (publisher.equalsIgnoreCase("Nintendo")) numOfTitles = publisherObj.getInt("count"); else continue; } %> <%= numOfTitles %>
<% int columnCount = 2; int spacingX = 235; int spacingY = 54; int displayedIndex = 1; for (int i = 0; i < publishers.length(); i++) { JSONObject publisherObj = publishers.getJSONObject(i); String publisher = publisherObj.getString("publisher"); int titleCount = publisherObj.getInt("count"); if (publisher.equalsIgnoreCase("Nintendo")) continue; // Skip Nintendo if (publisher.equalsIgnoreCase("Activision")) continue; // Skip Activision int row = displayedIndex / columnCount; int col = displayedIndex % columnCount; int leftPos = (col * spacingX) + 6; int topPos = (row * spacingY) + 2; displayedIndex++; %>
<%= publisher %>
Titles:
<%= titleCount %>
<% } %>
Activision
Titles:
<% int numOfTitles2 = 0; for (int i = 0; i < publishers.length(); i++) { JSONObject publisherObj = publishers.getJSONObject(i); String publisher = publisherObj.getString("publisher"); if (publisher.equalsIgnoreCase("Activision")) numOfTitles2 = publisherObj.getInt("count"); else continue; } %> <%= numOfTitles2 %>