Tôi hiện đang có một dự án sử dụng bộ điều khiển Spring và Thymeleaf để tạo một ứng dụng trình duyệt nhỏ. Lớp điều khiển được khai báo làSpring MVC, Thymeleaf & REST
@Controller public class MyController {
Bên trong bộ điều khiển Tôi có một như
@RequestMapping(value = "/foobars", method = RequestMethod.GET)
String index(Model model, --- more params ---) {
//call repository and get foobarsList
//model.addAttribute("foobars", foobarsList);
...
return "foobars/foobarThymeleafTemplate"
}
các kho lưu trữ cuộc gọi GET định nghĩa và nhận foobarList là một cuộc gọi đến một MongoRepository định nghĩa là:
public interface FoobarRepository extends MongoRepository< ... cut for brevity> {
@RestResource(rel = "by-id")
Marker findMarkerById(String id);
... additional @RestResources cut for brevity ...
}
Một lần nữa, Br owser App sẽ rất tuyệt. Số GET gọi đến kho lưu trữ, điền vào mô hình với danh sách các foobars và Thymeleaf thực hiện điều đó với danh sách đó.
VẤN ĐỀ: Bây giờ tôi cần phải truy cập vào dữ liệu tương tự từ một Android App và tôi muốn sử dụng REST và chỉ tiêu thụ JSON trong App Android. Tôi muốn giữ Thymeleaf nhưng sẽ cấu trúc lại ứng dụng trình duyệt nếu cần.
CÂU HỎI: Có cách nào bằng cách nào đó sử dụng cùng @Controller hoặc tôi sẽ phải duy trì FoobarRestController thứ hai bằng cách sử dụng @RestController với/restFoobars thiết bị đầu cuối không? Bộ điều khiển REST thứ hai hoạt động chắc chắn nhưng nó có vẻ hơi cẩu thả ... thiết kế kém.
Suy nghĩ và đề xuất của bạn?
Xin cảm ơn một lần nữa. -Rich
dù bạn đã trả lời câu hỏi này hai năm trước và tôi đồng ý sử dụng api hoàn chỉnh cho phần cuối và sau đó sử dụng một khung javascript cho giao diện người dùng nên được cộng đồng nên phấn đấu, tuy nhiên vẫn chưa có câu hỏi nào trên stackoverflow và hầu như không có tài liệu hoặc hướng dẫn về cách làm điều này, hoặc cộng đồng Java là rất kháng cự để thay đổi, hoặc điều này chỉ không hoạt động tốt về lâu dài, bạn nghĩ gì? –