アドバイスが必要です。私はSpringのフレームワークにはあまり適していません。私はあなたに簡単な質問をしたいだけです。@RequestBodyアノテーションの下で1フィールドだけオブジェクトを取得するにはどうすればよいですか?
私は、サーバー側で次のPOJOオブジェクトを持っている:
@Entity
@Table(name = "AutoRate")
public class AutoService {
public AutoService() {
}
@Id
@GeneratedValue(generator = "increment")
@GenericGenerator(name = "increment", strategy = "increment")
private long id;
@Column(name = "serviceName", nullable = false)
private String serviceName;
@Column(name = "imageURL", nullable = false)
private String imageURL;
@Column(name = "mapCoordinate", nullable = false)
private String mapCoordinate;
@Column(name = "websiteURL", nullable = false)
private String websiteURL;
@Column(name = "phoneNumber", nullable = false)
private String phoneNumber;
@JsonManagedReference
@OneToMany(mappedBy = "autoService", fetch = FetchType.EAGER, cascade = CascadeType.PERSIST)
private List<Service> services = new ArrayList<Service>();}
それはすべてのgetterとsetterが含まれています。私はただのスペースを節約したい。
次へ:私はクライアントのためにデータベースから1つのオブジェクトを取得したいと思います。これはデータベースの変数serviceName
だけを使用して行いたいです。
私は次のコントローラのメソッドがあります:クライアントからの呼び出しの後
@RequestMapping(value = "/getAutoService", method = RequestMethod.GET)
@ResponseBody
public AutoService getAutoService(@RequestBody String serviceName){
AutoService autoService = dataBaseService.getByName(serviceName);
return autoService;
}
を私は次のエラーを取得:
117899 [http-apr-8080-exec-1] WARN org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver - Failed to read HTTP message: org.springframework.http.converter.HttpMessageNotReadableException: Required request body is missing: public com.webserverconfig.user.entity.AutoService com.webserverconfig.user.controller.ServiceController.getAutoService(com.webserverconfig.user.entity.AutoService)
は私が@RequestBody
注釈間違っを使用していたと思います。
誰でもアドバイスをいただけますか?
お返事ありがとうございます。私はそれを試してみる。 – Andrew
私の答えはあなたを助けましたか?あなたの問題を解決しましたか? @Andrew –