我是初次改造和弹簧的新手,我在实施过程中遇到了错误:
我有一个声明如下的接口:
public interface ImageApi {
@Multipart
@POST("/image/{id}/data")
public boolean setImageData(@Path("id") long id, @Part("data") TypedFile imageData);
}
实现ImageApi接口的弹簧控制器:
public class ImageController implements ImageApi {
@RequestMapping(value="/image/{id}/data")
public @ResponseBody boolean setImageData(@PathVariable long id, MultipartFile imageData) {
...
}
}
编译器显示错误,因为我有一个类型为MultipartFile的变量“imageData” 在控制器中,但需要一个TypedFile变量。但是,这些示例具有这种实现形式。
请告诉我,我做错了什么?
答案 0 :(得分:1)
您只需删除'实施ImageApi'来自控制器。
接口使用Retrofit注释进行注释,以便与服务进行通信(从客户端)。
控制器(在服务器端)必须支持接口描述的HTTP API,但不应该在Java意义上实现这个接口' (你不应该让ImageController实现ImageApi)。