2016-07-28 12 views
-3

Das ist mein Ajax-Requestwie Kartendaten von Ajax-Request

var id = $(this).attr('data-id'); 

$.ajax({ 
    type: 'POST', 
    url: '../include/residents.jsp', 
    dataType: "json", 
    data: { 
     id: id, 
    }, 
    success: function(data) {}, 
    error: function(data) {} 
}).done(function() { 
}); 

Dies ist also innerhalb residents.jsp

<%@ page import="java.io.*,java.util.*, javax.servlet.*,java.text.*" %> 
<%@ page import="javax.swing.*" %> 
<%@page import="java.text.DateFormat"%> 
<%@page import="java.text.SimpleDateFormat"%> 
<%@page import="java.sql.PreparedStatement"%> 
<%@ page language="java"%> 
<%@page import="java.sql.ResultSet"%> 
<%@page import="java.sql.Statement"%> 
<%@ include file="dbconfig.jsp" %> 

<% 
    String id = request.getParameter("id"); 


    try { 

     conn.setAutoCommit(false); 
     PreparedStatement preparedStatement = null; 
     Map map = new HashMap(); 
     String add_supplemental = "SELECT * FROM residence_tb WHERE ri_id = ?"; 

      preparedStatement = conn.prepareStatement(add_supplemental); 
      preparedStatement.setString(1,id); 
      out.println("before"); 
      ResultSet rs = preparedStatement.executeQuery(); 
      while (rs.next()) { 
        String lname = rs.getString("ri_lname"); 
        String fname = rs.getString("ri_fname"); 
        String mname = rs.getString("ri_mname"); 
        String suffix = rs.getString("ri_suffix"); 
        String bdate = rs.getString("ri_bdate"); 
        String age = rs.getString("ri_age");  
        String gender = rs.getString("ri_gender"); 
        String status = rs.getString("ri_status"); 
        String mobileno = rs.getString("ri_mobileno"); 
        String telephoneno = rs.getString("ri_telephoneno");  
        String province = rs.getString("ri_province"); 
        String municipality = rs.getString("ri_municipality"); 
        String brgy = rs.getString("ri_brgy"); 
        String street = rs.getString("ri_street"); 


        map.put("lname", lname); 
        map.put("fname", fname); 


      } 

      out.println(map); 
//  rst.close(); 
//  stmt.close(); 

     conn.commit(); 
     conn.close(); 

    } catch(Exception e) { 
     e.getMessage(); 
     e.printStackTrace(); 
    } 
%> 

Es sieht gut schon zurück, wenn ich out.println(map); habe ich bekommen

{fname=Juan, lname=Dela Cruz} 

In der Antwort. Als ich return map habe ich versucht, bekommen

inkompatiblen Typ: unerwarteter Wert Rückkehr

Wie kann ich wieder map so kann ich es in Erfolg verwenden oder Funktionen erfolgt in Ajax

+0

Wo Sie diese kopiert haben .. – nicael

+0

ich gerade addieren, was ich in Stackoverflow suchen, um sie in einem Projekt zu kombinieren?. Ich versuche nur, was ich kann, damit es funktioniert –

+0

Was ist die Frage, von der Sie das kopiert haben? – nicael

Antwort

0

Bitte geben Sie einfach eine JSON-Zeichenfolge aus der Antwort zurück. JSON ist die Karte im Browser.

Map<String, Object> jsonMap = new HashMap<String, Object>(); 
jsonMap.put("Status", "Success"); 
jsonMap.put("Rows", 100); 
ObjectMapper mapper = new ObjectMapper(); 
mapper.getFactory().configure(JsonGenerator.Feature.ESCAPE_NON_ASCII, true);   
String jsonStr = mapper.writeValueAsString(jsonMap); 
response.getOutputStream().print(jsonStr); 

ObjectMapper ist eine Klasse für Jackson/fastxml. Dieser Code gibt den JSON an den Browser zurück.

response.getOutputStream().print("{\"result\":[{ \"lname\": \"Smith\", \"fname\": \"John\"}, { \"lname\": \"Smith1\", \"fname\": \"John1\" }, { \"lname\": \"Smith2\", \"fname\": \"John2\" }]}"); 

Am Browser:

var res = JSON.parse(request.responseText) 
console.log(res.result); 
+0

, was ich verwenden 'ObjectMapper' importieren tun müssen, und' JsonGenerator' o beide –

+0

Sie müssen erhalten Fehler fastxml 2.5.x zum Download Wenn der Rückgabewert nicht komplex ist. Sie könnten das JSON-Format manuell schreiben. response.getOutputStream(). Print ("{\" Status \ ": \" Success \ "}"); – Birdflying1005

+0

zum Beispiel möchte ich nur '[{ \t "lname": "Smith", \t "fname": "John", }, { \t "lname": "Smith1", \t "fname":" John1 ", }, { \t" lname ":" Smith2 ", \t" fname ":" John2 ", }] können Sie ein Beispiel zeigen? Ich möchte nur diese Art von Daten an Ajax, das ist alles zurück .. von der Select-Anweisung, die ich gemacht –

Verwandte Themen