如何使用angularjs从servlet返回json对象

时间:2017-08-22 10:38:49

标签: java angularjs json servlets

我想从angularjs中的servlet返回我的json对象我写了一个角度应用程序它没有给出任何错误,但它也没有得到数据。我无法正确搜索,因为我的英语有些不足,有人可以帮助我 这是我的代码

Angularjs

<div ng-app="myApp" ng-controller="customersCtrl"> 

<ul>
    <li ng-repeat="x in myData">
        {{ x.1}}
    </li>
</ul>

<script>
  var app = angular.module('myApp', []);
app.controller('customersCtrl', function ($scope, $http) {
    $http.get("first").then(function (res) {
        $scope.myData = res.data.jso;
    });
});</script>>

这里是我的doGet方法,我的json对象就在里面;

    @Override
public void doGet(HttpServletRequest req, HttpServletResponse res)
        throws ServletException, IOException {
    try {
        res.setContentType("text/html");
        PrintWriter pw = res.getWriter();

        Connection conn = DriverManager.getConnection(url, uname, pass);
        Statement stmt = conn.createStatement();

        ResultSet rs = stmt.executeQuery(query);    

        while (rs.next()) {


            JSONObject jso = new JSONObject();

            jso.put("1", rs.getString(1));
            jso.put("2", rs.getString(2));
            jso.put("3", rs.getString(3));
            jso.put("4", rs.getString(4));
            jso.put("6", rs.getString(6));
            jso.put("8", rs.getString(8));
            pw.print(jso);         
        }
        conn.close();
        rs.close();
        pw.close();
        stmt.close();
        pw.flush();

    } catch (Exception e) {
        out.println(e.getMessage());
    }

}

1 个答案:

答案 0 :(得分:0)

  

我写了一个有角度的应用程序它没有给出任何错误,但它也没有得到数据。

在你的通话中,你没有实现错误回调,而是:

$http.get("first").then(function (res) {
    $scope.myData = res.data.jso;
});

更改为:

$http.get("first").then(function (res) {
    console.log(res);
    $scope.myData = res.data.jso;
}, function (error) {
   console.error(error);
});

它会为您提供有关问题的更多信息