Aşağıdaki şekilde açıklamalı bir yöntemim var:
/**
* Provide a list of all accounts.
*/
// TODO 02: Complete this method. Add annotations to respond
// to GET /accounts and return a List<Account> to be converted.
// Save your work and restart the server. You should get JSON results when accessing
// http://localhost:8080/rest-ws/app/accounts
@RequestMapping(value="/orders", method=RequestMethod.GET)
public @ResponseBody List<Account> accountSummary() {
return accountManager.getAllAccounts();
}
Bu ek açıklamaya göre şunu biliyorum:
@RequestMapping(value="/orders", method=RequestMethod.GET)
bu yöntem , URL / siparişler tarafından temsil edilen kaynağa yapılan GET HTTP isteklerini işler .
Bu yöntem bir DAO nesnesini çağırır. Liste .
nerede Hesap sistemde bir kullanıcıyı gösterir ve bu kullanıcıyı temsil bazı alanları vardır, gibi bir şey:
public class Account {
@Id
@Column(name = "ID")
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Long entityId;
@Column(name = "NUMBER")
private String number;
@Column(name = "NAME")
private String name;
@OneToMany(cascade=CascadeType.ALL)
@JoinColumn(name = "ACCOUNT_ID")
private Set<Beneficiary> beneficiaries = new HashSet<Beneficiary>();
...............................
...............................
...............................
}
Sorum şu: @ResponseBody
Ek açıklama tam olarak nasıl çalışıyor?
İade edilmeden önce bulunur List<Account>
nesnenin aldığından bu Listeye atıfta bulunduğunu düşünüyorum. Kurs belgeleri, bu ek açıklamanın şu işlevi yerine getirdiğini belirtir:
sonucun bir HTTP Mesaj Dönüştürücüsü (MVC Görünümü yerine) tarafından HTTP yanıtına yazılacağından emin olun.
Ve ayrıca resmi Bahar belgelerini okuyunuz: http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/bind/annotation/ResponseBody.html
Görünüşe göre List<Account>
nesneyi alıyor ve onuHttp Response
. Bu doğru mu yoksa yanlış mı anlıyorum?
Önceki accountSummary()
yöntemin yorumuna yazılanlar :
Http: // localhost: 8080 / rest-ws / app / accounts'e erişirken JSON sonuçlarını almalısınız
Peki bu tam olarak ne anlama geliyor? O anlamına mı List<Account>
döndürdüğü nesne accountSummary()
yöntemiyle otomatik dönüştürülür JSON
içine format ve ardından koymakHttp Response
? Ya da ne?
Bu iddia doğruysa, nesnenin otomatik olarak JSON
formata dönüştürüleceği nerede belirtilir ? @ResponseBody
Ek açıklama kullanıldığında standart format benimseniyor mu yoksa başka bir yerde mi belirtiliyor?