我在webapp上工作,找不到我的问题的解决方案或例子。我使用AngularJS, RestServis和JavaEE。我的问题是如何发送继承对象与superObject
在java中我有两个类:
public class User{
protected String userName;
protected String userSurename;
..
..
}
第二个类是子类
public class Worker extends User{
protected int idWorker;
protected String position;
..
..
}
在Angular控制器中我有
$scope.user = {
userName : "jon" ,
userSurename :"dep" }
$scope.worker= {
idWorker: 88 ,
position: "seller" }
,我使用http协议在服务器端发送数据,像这样
this.saveWorker = function(worker) {
return $http({
method:'post',
url:this.apiBasicUrl,
contentType: "application/json",
data: worker
});
};
如何在Angular的数据中放置一个对象,并在Java端获得带有用户数据的工作对象?我能不能,像java中的对象一样,用继承的方式在angular中生成
在Angular方面,我建议使用$resource
与REST API通信:
var Worker = $resource('/worker/:workerId', {workerId:'@id'});
//get
var worker = Worker.get({workerId:123}, function() {
worker.abc = true;
//save
worker.$save();
});
在服务器端,你应该有一个REST端点来接收这些对象:
@Path("/worker")
public class WorkerService {
@GET
@Path("{workerId}")
public Worker getWorker(@PathParm("workerId") Integer workerId) {
//implement
}
@POST
public void saveWorker(Worker worker) {
//implement
}
}
这可能无法开箱运行。您很可能需要Jackson提供程序来启用REST将JSON"转换"为Java对象。
请看下面的例子:http://www.mkyong.com/webservices/jax-rs/json-example-with-jersey-jackson/