我在春天的Web應用程序使用工作作爲thymeleaf的解析器最近,和我的深化發展控制器時,我面臨着新的形勢:@PathVariable春季控制器
我真的不知道這件事,但是能從視圖傳遞的@Pathvariable
是一個對象? (一個模型的複合鍵是精確的?)
我以前使用過ids,但大多數都是簡單的int ids,我只想知道傳遞一個對象(這是我的對象的主鍵)是可能的,而不是簡單的int ID?
,並感謝您
我在春天的Web應用程序使用工作作爲thymeleaf的解析器最近,和我的深化發展控制器時,我面臨着新的形勢:@PathVariable春季控制器
我真的不知道這件事,但是能從視圖傳遞的@Pathvariable
是一個對象? (一個模型的複合鍵是精確的?)
我以前使用過ids,但大多數都是簡單的int ids,我只想知道傳遞一個對象(這是我的對象的主鍵)是可能的,而不是簡單的int ID?
,並感謝您
你可以使用Spring屬性編輯器或Spring轉換器看到Spring Convertor
例如
public class CategoryConverter implements Converter<String, Category>{
@Autowired
private CategoryService categoryService;
public Category convert(String id) {
return categoryService.findById(Long.valueOf(id));
}
}
而是直接保存對象時,數據庫可能會遇到一些問題。
我明白你的觀點,但問題是我的模型有一個conpound主鍵,這意味着,要找到整個對象,我需要兩個變量,而不是像你放置的例子那樣。我不太明白在哪裏使用這個轉換器:在控制器中? – Aissasa 2014-09-04 11:18:39
我想你可以......唯一的問題是你將不得不告訴春天如何將字符串值(路徑值將一個字符串右)到對象...春天使用屬性編輯器(通過initBinder)來做到這一點......所以你可以註冊一個新的屬性編輯器,它可以做轉換,那麼它應該是可能的 – 2014-09-04 03:23:34