2015-02-11 128 views
0

在这里我通过AJAX从JSP调用servlet。在servlet中,从数据库中获取数据并使用Gson将这些数据转换为JSON格式。之后,我想将这个json对象发送给这个JSP.But在这里我不能发送JSON对象。请告诉我吗? 为Ajax调用下面的代码:不能发送json对象到servlet

<script type="text/javascript"> 
     $(document).ready(function() { 
      $('#subbtn').click(function(event) {  
       console.log("Hello"); 
       var searchfield = $('#searchfields').val(); 
       var operator = $('#operator').val(); 
       var fieldvalue = $('#searchstring').val(); 
       var filter=searchfield+operator+"'"+fieldvalue+"'"; 
       console.log(filter); 
       $.get('SearchData', { 
        filter : filter 

       }, function(responseText) { 
        $('#example').html(responseText); 

        console.log('dddd'); 
       }); 
      }); 

     }); 
    </script> 

这里是servlet代码:

String query = "select * from searchsample"; 
     statement = connection.createStatement(); 
     resultSet = statement.executeQuery(query); 
     while (resultSet.next()) { 

      renderingengine = resultSet.getString("RenderingEngine"); 
      browser = resultSet.getString("Browser"); 
      platform = resultSet.getString("platform"); 
      engineversion = resultSet.getString("EngineVersion"); 
      cssgrade = resultSet.getString("CSSGrade"); 
     } 

     Gson gson = new Gson(); 

     JsonVo jsondata=new JsonVo(); 
     jsondata.setRenderingengine(renderingengine); 
     jsondata.setBrowser(browser); 
     jsondata.setPlatform(platform); 
     jsondata.setEngineversion(engineversion); 
     jsondata.setCssgrade(cssgrade); 
     String toJson = gson.toJson(jsondata); 
     System.out.println("Json Format : " +toJson); 

     request.setCharacterEncoding("utf8"); 
     response.setContentType("application/json"); 

回答

0

我想你只需要编写以下线路从servlet发送JSONJSP

response.setContentType("application/json"); 
response.getWriter().write(toJson);