import 的 model 是 “import org.springframework.ui.Model;”,而不是maven里的model类
通过model传的值。model.addAttribute(course)可以类比成request.setAttribute("course", course),model将request做了一层包装,处理就交给了框架。
setter注入(Spring IOC)

Controller——基础代码
根据课程的ID查询某一个课程的详情
创建名称为CourceController,首先有个依赖CourseService来完成课程查询的业务逻辑功能,并且通过@Autowired对其进行自动注入,之后可以添加日志,在pom中添加日志的依赖,private static Logger log=LoggerFactory.getLogger(CourseController.class),调用业务逻辑方法完成ID的查询,所以提供一个方法,传入课程ID和SpringMVC提供特有的类型Model,然后再向Model中添加模型对象,调用CourseService的逻辑方法,并把返回的对象通过Model的addAttribute(course),前端页面EL表达式的对象名就是course,就可以通过该对象进行取属性,由于使用了SpringMVC的InternalResourceViewResolver,所以返回的时候只需要给定jsp的名字即可如下图。



Controller基础代码
将查询得到的course放进model里面,然后在jsp页面就可以使用${course.title}等方式访问数据