之前学完Java语法之后直接上手一个Java boot的web项目。传送门
遇到了一个问题,在controller中定义Model对象,如下:
1 public String Hello_World(Model model) { 2 model.addAttribute("aaa", "naive"); 3 return "Hello"; 4 }
进入Model文件后,发现Model是一个接口:
public interface Model { Model addAttribute(String attributeName, @Nullable Object attributeValue); Model addAttribute(Object attributeValue); Model addAllAttributes(Collection<?> attributeValues); Model addAllAttributes(Map<String, ?> attributes); Model mergeAttributes(Map<String, ?> attributes); boolean containsAttribute(String attributeName); Map<String, Object> asMap(); }
为什么没有new接口的实现类呢?这样用不是违反语法了吗?
实际上,spring IOC容器管理 ,已经把对象实例化了。。
还有很多问题。例如注解是怎么实现的。。。
恩,这就是我下面要学习Spring的理由了。