Java Rest api:服务器返回的对象与客户端接收的对象不同
我有一个JPA实体,客户端,我在其中添加了客户端所需的DTO属性:Java Rest api:服务器返回的对象与客户端接收的对象不同,java,angularjs,rest,jpa,Java,Angularjs,Rest,Jpa,我有一个JPA实体,客户端,我在其中添加了客户端所需的DTO属性: @Entity @Table(name = "T_CLIENT") @Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE) public class Client implements Serializable { @Id @GeneratedValue(strategy = GenerationType.AUTO) private L
@Entity
@Table(name = "T_CLIENT")
@Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
public class Client implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
...
...
@Transient
@OneToOne
private ReglementDTO reglementDTO;
...}
我的REST资源看起来像:
/**
* GET /rest/clients/:id -> get the "id" client.
*/
@RequestMapping(value = "/rest/clients/{id}",
method = RequestMethod.GET,
produces = MediaType.APPLICATION_JSON_VALUE)
@Timed
public ResponseEntity<Client> get(@PathVariable Long id) {
log.debug("REST request to get Client : {}", id);
ResponseEntity<Client> clientEntity = Optional.ofNullable(clientRepository.findOne(id))
.map(client -> new ResponseEntity<>(
client,
HttpStatus.OK))
.orElse(new ResponseEntity<>(HttpStatus.NOT_FOUND));
ReglementDTO reglementDTO = new ReglementDTO();
reglementDTO.setDateDeBase(clientEntity.getBody().getReglement().getDateDeBase().getDesignation());
reglementDTO.setId(clientEntity.getBody().getReglement().getId());
reglementDTO.setNbJoursCredit(clientEntity.getBody().getReglement().getNbJoursCredit());
reglementDTO.setTypeReglement(clientEntity.getBody().getReglement().getTypeReglement().getDesignation());
reglementDTO.setDateDerniereModif(clientEntity.getBody().getReglement().getDateDerniereModif());
clientEntity.getBody().setReglementDTO(reglementDTO);
return clientEntity;
}
在$scope.clients的每个客户端中,都缺少reglementDTO
感谢您的回答。查看网络选项卡,查看您从服务器收到的响应。您好,也许你的问题与以下事实有关:Http请求返回的对象是一个承诺,如果你给出前端代码的示例,那么你的代码以错误的方式处理它,因为你说后端提供了所需的API,也许一个代码示例将帮助我们指出错误所在。我编辑了我的帖子。非常感谢。
$scope.clients = Client.query(function(){
$log.info($scope.clients)
});