Javascript 如何使用Angular 1.5.8和Javaservlet通过POST提交表单?

Javascript 如何使用Angular 1.5.8和Javaservlet通过POST提交表单?,javascript,java,angularjs,jsp,servlets,Javascript,Java,Angularjs,Jsp,Servlets,我读了一些教程和在线文档,但仍然无法理解。 我想从jsp表单传递一些参数。 这是我的js脚本: var app = angular.module('myApp', []); app.controller('FormController', FormController); //add dependecies FormController.$inject = ['$scope', '$http']; function FormController($scope, $http) { $s

我读了一些教程和在线文档,但仍然无法理解。 我想从jsp表单传递一些参数。 这是我的js脚本:

var app = angular.module('myApp', []);
app.controller('FormController', FormController);

//add dependecies
FormController.$inject = ['$scope', '$http'];

function FormController($scope, $http) {
    $scope.blob = {};
    $scope.submitForm = function() {
        $http({
            method : 'POST',
            url : '/javaAngularJS',
            data : $scope.blob,
            headers: {
                'Content-Type': 'application/json; charset=utf-8'
            }
        });
    };
}
这是我的表格:

<div class="site-body" ng-app="myApp">
    <form ng-controller="FormController" ng-submit="submitForm()">
    <p>Blob Key: <input type='input' name='blob-key' ng-model="blob.key"></p>
    <p>Ancestor: <input type='text' name='ancestor' ng-model="blob.ancestor"></p>
<input type="submit" class="btn btn-primary" value="Submit">
</div>

Blob键:

祖先:

我的web.xml中添加了一个带有Post方法的Servlet类。我可以在其他东西中使用Angular和AJAX调用,但我一直坚持这一点。 如何在Servlet中正确检索表单参数?例如,我想使用System.out.prinltn打印参数。

您可以使用服务序列化数据

(从
{key:asd],祖先:“asd”}
祖先=asd&key=asd

因此,您可以获取参数:

String key = request.getParameter("key");
String ancestor = request.getParameter("ancestor");
如果您想用JSON格式解析请求,那么可以使用Jackson、Gson等库将JSON输入转换为Java对象,反之亦然

String key = request.getParameter("key");
String ancestor = request.getParameter("ancestor");